Einführung in die Java-Webentwicklung - Part II - [3 of 3] - Java Server Face...
Vaadinator erweitern
1. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Vaadinator erweitern
Daniel Nordhoff-Vergien
2. M¨arz 2016
Daniel Nordhoff-Vergien
Vaadinator erweitern
2. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Gliederung
1 Vaadinator, was ist das?
2 Erweitern
3 WebDriver Erweiterung
4 WebDriver Erweiterung live
5 Aussicht
6 Links
Daniel Nordhoff-Vergien
Vaadinator erweitern
3. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Vaadinator
Code Generator
Daniel Nordhoff-Vergien
Vaadinator erweitern
4. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Vaadinator
Code Generator
Erstellt eine MVP Anwendung aus annotierten Java Klassen
Daniel Nordhoff-Vergien
Vaadinator erweitern
5. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Vaadinator
Code Generator
Erstellt eine MVP Anwendung aus annotierten Java Klassen
@DisplayBean um eine Klasse, @DisplayProperty um ein Feld,
zu kennzeichnen
Daniel Nordhoff-Vergien
Vaadinator erweitern
6. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Vaadinator Beispiel
@DisplayBean(captionText = "Adresse ")
public class Address {
@DisplayProperty
private String vorname;
@DisplayProperty(profileSettings = {
@DisplayPropertySetting(required =
true) })
private String nachname;
// Mehr Felder
// Getter , Setter , etc
}
Daniel Nordhoff-Vergien
Vaadinator erweitern
7. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Das Erzeugt
MVP CURD Ober߬ache
Service- und DAO-Klassen f¨ur EJB und JPA
Mapper
Klassen f¨ur Fitnesse
Daniel Nordhoff-Vergien
Vaadinator erweitern
8. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Das Erzeugt
MVP CURD Ober߬ache
Service- und DAO-Klassen f¨ur EJB und JPA
Mapper
Klassen f¨ur Fitnesse
Aber ich brauch noch was...
Aber ich will nicht die ca. 500 Zeilen Methode erweitern...
Daniel Nordhoff-Vergien
Vaadinator erweitern
9. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Java SPI
Java SE “Plugin” Mechanismus
Klasse implementiert ein Interface
Implementierung wird in
META-INF/services/full.qualified.interface.name
registriert
Implementierungen k¨onnen mit java.util.ServiceLoader
geladen werden
Daniel Nordhoff-Vergien
Vaadinator erweitern
10. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Java SPI
Java SE “Plugin” Mechanismus
Klasse implementiert ein Interface
Implementierung wird in
META-INF/services/full.qualified.interface.name
registriert
Implementierungen k¨onnen mit java.util.ServiceLoader
geladen werden
In unserem Fall:
de.akquinet.engineering.vaadinator.generator.CodeGenerator
Daniel Nordhoff-Vergien
Vaadinator erweitern
12. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Einbinden
<plugin >
<groupId >de.akquinet.engineering.vaadin.vaadinator
<artifactId >VaadinatorGenerator </artifactId >
<version >0.20- SNAPSHOT </version >
<dependencies >
<dependency >
<groupId >de.akquinet.engineering.vaadin.vaadin
<artifactId >VaadinatorGeneratorWebDriver </arti
<version >0.20- SNAPSHOT </version >
</dependency >
</dependencies >
<!-- cut -->
</plugin >
Das ist sch¨oner als die Klasse zu patchen
Daniel Nordhoff-Vergien
Vaadinator erweitern
13. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
WebDriver Page Objects
Benutzt Selenium, WebDriver Extensions und “Addon Test
helpers” Addon
Daniel Nordhoff-Vergien
Vaadinator erweitern
14. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
WebDriver Page Objects
Benutzt Selenium, WebDriver Extensions und “Addon Test
helpers” Addon
Erzeugt eine “Component” Klasse pro View (List, Add und
Change)
Erzeugt eine “Page” Klasse pro DisplayBean
Daniel Nordhoff-Vergien
Vaadinator erweitern
15. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
WebDriver Test live
Daniel Nordhoff-Vergien
Vaadinator erweitern
16. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Aussicht
Aufr¨aumen: “SySo Logging”, JavaDoc, ...
“Alten” Generator modularisieren (?)
Eure Erweiterungen
Daniel Nordhoff-Vergien
Vaadinator erweitern
17. Vaadinator, was ist das? Erweitern WebDriver Erweiterung WebDriver Erweiterung live Aussicht Links
Links
https://github.com/akquinet/vaadinator
https://github.com/dve/vaadinator
http://docs.seleniumhq.org/
https:
//github.com/webdriverextensions/webdriverextensions
https://github.com/mstahv/addon-test-helpers
Daniel Nordhoff-Vergien
Vaadinator erweitern