2016-04-05 23 views
0

Ist es möglich, jedes Szenario im Webdriver-Maximierungsmodus auszuführen?Serenity verwalten Webdriver im maximize-Fenster laufen lassen

Ich habe versucht, Runner-Klasse-Methode mit TestNG Annotation @BeforeClass hinzuzufügen und es funktioniert nur einmal, aber wenn Szenario bestanden oder fehlgeschlagen als der Browser geschlossen und dann wieder im minimierten Modus öffnen. Andererseits möchte ich nicht alle @Before Gurken Annotation zu meinen Feature-Dateien hinzufügen. Ich möchte es nur an einem Ort ändern.

Ich konnte open() Methode nicht überschreiben, weil es endgültig ist. Ich suche nach einer Lösung, wenn ich es in der Läuferklasse oder sogar direkt in Immobilien tun kann.

Jede Hilfe wird geschätzt.

auch:

  1. Ich weiß, wie zu maximieren
  2. Ich habe versucht, Pageobject-Klasse und in benutzerdefinierter Klasse zu maximieren mit erweitern, direkt im Konstruktor schrieb getdriver() verwalten() Fenster()... maximieren(); Diese Lösung funktioniert gut, aber für mich sieht es nicht so gut aus, wie es sein kann, denn es ist nur ein zusätzlicher Aufruf der Methode, die nicht jedes Mal bei der Initialisierung des pageObject aufgerufen werden sollte.
  3. Auch ich habe versucht, es in Eigenschaften durch Hinzufügen von Höhe und Gewicht des Browsers zu tun, aber ich mag es nicht so.

Danke.

Antwort

0

haben Sie

versucht
driver.manage().window().maximize() 

reference

+0

gut, ja, wie gesagt in Verfahren, die von @BeforeClass in runner Klasse bezeichnet ist. Dies ist keine Frage, wie man den Browser maximiert, es ist eher eine Frage, wie man es in Gurke für jedes Szenario mit einigen Nuanses macht. – diazolin88

+0

wolltest du das? FirefoxProfile firefoxProfile = new FirefoxProfile(); firefoxProfile.setPreference ("browser.download.folderList", 2); firefoxProfile.setPreference ("browser.download.manager.showWhenStarting", false); firefoxProfile.setPreference ("browser.download.dir", "c: \\ downloads"); firefoxProfile.setPreference ("browser.helperApps.neverAsk.saveToDisk", "text/csv"); WebDriver-Treiber = neuer FirefoxDriver (firefoxProfile); // neuer RemoteWebDriver (neue URL ("http: // localhost: 4444/wd/hub"), Funktion); driver.navigate(). Zu ("http://www.myfile.com/hey.csv"); –

0

ich genau bin nicht sicher, was dein Problem ist, wie Sie Ihre Beschreibung verwirrend ist. Es hört sich an, als ob Sie mehrere Tests in einer Klasse haben und wenn der erste Test beendet ist, schließt sich der Treiber und öffnet sich erneut als neue Instanz.

Verwenden Sie die BeforeMethod anstelle von BeforeClass. So etwas wie

@BeforeMethod(alwaysRun = true) 
public void setup() 
{ 
    WebDriver driver; 
    driver.manage().window().maximize(); 
} 
+0

Gut meine Frage zu verstehen, sollten Sie mit Gelassenheit arbeiten =) – diazolin88

0

Versuchen Sie folgendes:

@WhenPageOpens 
public void maximiseScreen() { 
    getDriver().manage().window().maximize(); 
}