2015-05-22 16 views
5

Sto esplorando il mondo dei test dei goniometri per AngularJS.È necessario `webdriver-manager start`?

Tutti i tutorial raccomandano eseguo il seguente testo dopo webdriver-manager update e prima di eseguire il test: webdriver-manager start

Secondo l'uomo webdriver-manager, il comando sarà start 'avviare il server di selenio'. Abbastanza vero, una volta eseguito il comando sopra, posso vedere qualcosa a http://127.0.0.1:4444/wd/hub

Le mie domande sono: è necessario?

Attualmente eseguo i test senza il comando precedente.

Tutto ciò che faccio è: webdriver-manager update php -S localhost:8000 -t dist/ protractor ./test/protractor.config.js

miei test eseguito come previsto anche se ho escluso webdriver-manager start.

Qualcuno può spiegare perché è necessario webdriver-manager start?

: EDIT:

miei goniometro/fooTests.js:

exports.config = { 
    directConnect: true, 
    capabilities: { 
     'browserName': 'chrome' 
    }, 
    specs: ['protractor/fooTests.js'], 
    jasmineNodeOpts: { 
     showColors: true, 
     defaultTimeoutInterval: 30000 
    } 
}; 

miei goniometro/fooTests.js:

describe('test for the bar code', function() { 
    it('should login', function() { 
     browser.get('http://localhost:8000'); 

     element(by.model('password')).sendKeys('123456'); 
     element(by.css('[type="submit"]')).click(); 
    }); 
    it('should inspect element ', function() { 
     expect(element(by.id('foo-script')).isPresent()).toBe(true); 
     console.log('Login Success'); 
    }); 
}); 

risposta

3

goniometro sta inviando comandi al Selenio e Il selenio sta comunicando con i browser usando i suoi driver.

webdriver-manager start 

sta iniziando il selenio.

Ci sono 3 opzioni di base:

  1. directConnect. Questo rende il goniometro in grado di comunicare direttamente con i driver del selenio, senza utilizzare il server Selenium. Tuttavia, la funzionalità di questa opzione è limitata:

DirectConnect: vero - Lo script di test driver comunica direttamente Chrome o Firefox driver, bypassando qualsiasi server selenio. Se ciò è vero, le impostazioni per seleniumAddress e seleniumServerJar verranno ignorate. Se si tenta di utilizzare un browser diverso da Chrome o Firefox, verrà generato un errore.

  1. Collegamento a un server già in esecuzione il selenio (locale o remoto), specificata da seleniumAddress. Un server può essere avviato utilizzando lo script webdriver-manager start.

  2. Avvio del server dallo script di test.

È possibile esplorare tutte le opzioni nella documentazione https://github.com/angular/protractor/blob/master/docs/server-setup.md

+0

Non credo selenio è in funzione, per impostazione predefinita. 'ps aux | il greggio -i selenio' non produce nulla. Dovrei essere in cerca di qualcos'altro? – Housni

+0

@Housni grep per Java – Sulthan

+0

Ho provato anche quello, niente. Vedo i risultati quando eseguo 'webdriver-manager start' e poi grep per esso ma non altrimenti, il che mi porta a credere che Selenium non sia in esecuzione in background. È possibile che il comando 'goniometro./Test/protractor.config.js' stia attivando Selenium per eseguirlo? – Housni