2015-06-06 40 views

Odpowiedz

10

można ustalić rozmiar ekranu przed każdym badaniem tak:

module.exports = { 
    tags: ['myTest'], 
    before : function (browser) { 
    browser.resizeWindow(800, 600); 
    }, 
    'Test #1' : function (browser) { 
    return browser 
     .url('http://localhost/test1') 
     .waitForElementVisible('body', 2000); 
    }, 
    'Test #2' : function (browser) { 
    return browser 
     .url('http://localhost/test2') 
     .waitForElementVisible('body', 2000); 
    }, 
    after : function (browser) { 
    browser.end(); 
    } 
} 
14

ustawić go raz na zawsze w konfiguracji env (pod test_settings w NightWatch pliku konfiguracyjnym):

"desiredCapabilities": { 
    "chromeOptions": { 
     "args": [ 
      "window-size=1280,800" 
     ] 
    } 
} 

zauważ, że ta metoda zadziała, ponieważ ustawiamy flagę chrome, więc implementacja może się różnić (np. Safari nie ma takich flag).

dla przeglądarek, które nie obsługują tych opcji, to najlepiej, aby zmienić rozmiar okna imperatively w globalnych beforeEach hak:

{ 
    beforeEach: function (browser, done) { 
     browser.resizeWindow(1280, 800, done); 
    } 
} 

mają przeczytać na nightwatch settings docs aby zobaczyć, jak wykorzystywane są globalne.

stosując powyższe sposoby, to nie będzie musiał podać go w każdym teście :)

+1

Czy chodziło Ci 'browser.resizeWindow (1280, 800, wykonane)'? masz rację, zaktualizowałem odpowiedź .. –

+1

Zrobiłem - whoops! Dobrze, że to zaktualizujesz. Twoje zdrowie. Usunięto oryginalny komentarz, aby nie mylić ludzi z niewłaściwą sugestią. Zobacz komentarz @Eliran Makla – GrayedFox