Stap 2: Basis testscript
Laten we beginnen met de basics.
Hier is een eenvoudige mokka-script dat zal een website openen en controleren of de titel.
// tutorial1.js // // This is a simple test script to open a website and // validate title. // required libraries var webdriverio = require('webdriverio'), should = require('should'); // a test script block or suite describe('Title Test for Web Driver IO - Tutorial Test Page Website', function() { // set timeout to 10 seconds this.timeout(10000); var driver = {}; // hook to run before tests before( function (done) { // load the driver for browser driver = webdriverio.remote({ desiredCapabilities: {browserName: 'firefox'} }); driver.init(done); }); // a test spec - "specification" it('should be load correct page and title', function () { // load page, then call function() return driver .url('http://www.tlkeith.com/WebDriverIOTutorialTest.html') // get title, then pass title to function() .getTitle().then( function (title) { // verify title (title).should.be.equal("Web Driver IO - Tutorial Test Page"); // uncomment for console debug // console.log('Current Page Title: ' + title); }); }); // a "hook" to run after all tests in this block after(function(done) { driver.end(done); }); });
Opmerkingen:
- U moet eerst opmerken dat het testscript is geschreven in JAVASCRIPT (eindigt op de extensie .js).
- De basisstructuur is vrijwel identiek voor alle testscripts.
- Koptekst opmerkingen (/ /)
- Vereiste bibliotheken
- Opties instellen (optioneel)
- Hook: Load Browser-stuurprogramma
- Test Suite (beschrijving)
- Test Specs (kunnen vele Specs in een Suite)
- Haak: Opruimen
- De testsuite begint met een functie beschrijven die twee parameters:
- String - Beschrijving van de testsuite
- "Pagina om te controleren voor juiste woordenstroom"
- "Na te gaan of radio knop"
- functie - blok code uit te voeren
- beschrijven ('Omschrijving van de testsuite', function {});
- String - Beschrijving van de testsuite
- De testsuite bevat 1 of meer test-spec (specificatie)
- Specs beginnen met het functie die twee parameters:
- String - Beschrijving van de testspecificatie
- 'Moeten zijn juiste linktekst en URL van koppeling'
- "Moet bevatten juiste woordenstroom (kopie dek)
- functie - blok code uit te voeren
- het ('Omschrijving van de testspecificatie', function {});
- String - Beschrijving van de testspecificatie
- Een specificatie bevat een of meer verwachtingen die testen van de staat van de code
- Deze worden beweringen genoemd
- De bibliotheek "moet" voorziet de beweringen
- In bijna alle gevallen, zal u wilt zoeken een of meer elementen met behulp van een selector dan sommige bewerking uitvoeren op de elementen
- Voorbeelden:
- Tekst zoeken op een pagina en controleer of de tekst
- Een formulier invullen en indienen
- Controleer of de CSS van een element
- Voorbeelden:
Neem een dichtere blik bij het voorbeeld met commentaar.
Laden van de vereiste libraries: web stuurprogramma IO en moet.
// required libraries var webdriverio = require('webdriverio'), should = require('should');
Definieer de testverzameling. Deze suite het heet: "Titel Test voor Web Driver IO - Tutorial Test pagina Website"
// a test script block or suite describe('Title Test for Web Driver IO - Tutorial Test Page Website', function() { ... });
Stel de time-out in 10 seconden zodat het script niet time-out bij het laden van de pagina.
// set timeout to 10 seconds this.timeout(10000);
Haak het stuurprogramma te laden browser voordat u de specificaties "specs". De Firefox-stuurprogramma wordt geladen in dit voorbeeld.
// hook to run before tests before( function (done) { // load the driver for browser driver = webdriverio.remote({ desiredCapabilities: {browserName: 'firefox'} }); driver.init(done); });
Definieer de testspecificatie.
// a test spec - "specification" it('should be load correct page and title', function () { ... });
Laden van de websitepagina
.url('http://www.tlkeith.com/WebDriverIOTutorialTest.html')
Titel, dan doorgeven titel function
.getTitle().then( function (title) { ... });
Controleer of de titel gebruikt de bewering bibliotheek moet.
(title).should.be.equal("Web Driver IO - Tutorial Test Page");
Haak om te stoppen en opruimen van het stuurprogramma als u klaar bent.
// a "hook" to run after all tests in this block after(function(done) { driver.end(done); });