2017-10-25 3 views
0

Ich habe fast 20 Variablen zu deklarieren, also möchte ich sie nicht für jeden Test deklarieren. Ich wollte sie in einem beforeAll() deklarieren, aber ich glaube nicht, dass das funktioniert. Wie kann ich viele Variablen einmal (in beforeAll oder anderswo) deklarieren und in mehreren Tests darauf zugreifen?WDIO: Wie auf Variablen in einem beschreibenden Block zugreifen, die in BeforeAll deklariert wurden?

funktioniert das nicht:

const assert = require('assert'); 

beforeAll(() => { 
    browser.url('example.com'); 
    // ### declare a bunch of variables ### 
}) 

describe('something',() => { 
    it('should do cool stuff',() => { 
    // access a bunch of variables 

    }); 
}); 

auch nicht dies:

const assert = require('assert'); 

beforeAll(() => { 
    browser.url('example.com'); 
}) 

describe('something',() => { 
    // ### declare a bunch of variables ### 
    it('should do cool stuff',() => { 
    // access a bunch of variables 

    }); 
}); 

Antwort

1

Ugh, ich wusste, dass ich etwas einfach, fehlte und ich verwendet habe, noch bevor diese Methode ...

Erstellen Sie eine Datei mit dem Namen config.js oder was auch immer Sie wollen, im selben Verzeichnis wie Ihre Tests. Deklarieren Sie alle Ihre Variablen in dieser Datei, wie so

module.exports = { 
    get var1() { return browser.element(yourSelector); }, 
    get var2() { return browser.element(yourSelector); },  
    ... 
    get var20() { etc }, 
} 

Dann an der Spitze der Spec-Datei benötigen die obige Datei wie const gv = require('./config.js');

Verwenden Sie die Variablen wie diese gv.var1.click() oder gv.var2.whatever().

Verwandte Themen