2015-06-06 11 views

risposta

10

È possibile correggere la dimensione dello schermo prima di ogni prova così:

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

insieme in su una volta per tutte nella configurazione ENV (sotto test_settings nel file di configurazione Nightwatch):

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

nota che questo metodo funzionerà perché stiamo impostando un flag chrome, quindi l'implementazione potrebbe variare (ad esempio, safari non presenta tali flag).

per i browser che non supportano queste opzioni, è meglio ridimensionare la finestra imperatively nelle globali beforeEach agganciare:

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

hanno una lettura sulla nightwatch settings docs per vedere come vengono utilizzati globali.

utilizzando i metodi di cui sopra, si non sarà necessario specificarlo in ciascuna prova :)

+1

Cercavi 'browser.resizeWindow (1280, 800, fatto)'? hai ragione di, ho aggiornato la risposta .. –

+1

ho fatto - whoops! Bene, voi per aggiornarlo. Saluti. Commento originale eliminato per non confondere le persone con il suggerimento sbagliato. Vedi il commento di @Eliran Makla – GrayedFox