Cypressus fixtures: V res magnae scire debes

Optima exercitia in test automatione secernit testium notitias a documentorum testium. Haec aspectus una est praecipuae necessitatis dum probationem compagem designans. Cupressus adiuvat nos facultates ad experimentum notitias secernendas cupressus fixtures. In hoc argumento de eo disseremus Cupressus adfixa manibus in exsequenda et vera temporis exempla

Table of Contents

Quid est fixtura in cupresso?

Cupressus fixtures possunt esse fons notitia ab externa files. Adfixa in cupresso auxilium te legere aut scribere in files. Una e populari compage in test automatione est compage Data-acti ubi notitias e lima testium separamus. Datas in fasciculo externo servare solemus sicut Praecedo et ea lege utentes extra bibliothecas. Cupressus eandem notam nobis praebet ut notitias e lima legeres.

Cupressus folder nobis praebet vocatum adfixa, ubi imaginum JSON creare possumus et ex eo notitias legere, ubi illas fasciculos in multiplicibus testium fasciculis legere possumus. Nos reponunt in notitia ut key-valorem par et obvius illis.

Quomodo fixturis cupressis in Testibus uteris?

Adfixa cypresso accedere possumus per sequentem syntaxin quae infra

cy.fixture(filePath)
cy.fixture(filePath, encoding)
cy.fixture(filePath, options)
cy.fixture(filePath, encoding, options)

parametri in fixtures transiri posse intelligemus

filepath - semita in qua reposuisti test data

modum translitterandi – Descriptio quae in lima utens adhibentur. Quaedam descriptae sunt ascii, base 64, lxx, binarii etc

options - In optionibus transire possumus timeout responsio. Est specificare timeout ad propositum cy.fixture ()

Quomodo notitias legere de fixturis in Cypresso?

Nos test notitias in tabella sub definire debebimus magnique folder. Testimoniorum notitias ex JSON tabellae accessurae in testi scripturae adfixa cypresso adhibebimus.

Nunc teneamus exemplum cupressi adfixa. In domicilio usoris et tesserae usus erimus. Ponamus ergo valores usoris et tesserae in tabella.

Faciamus limam nominatam documentorum.json sub fixture folder. Variabiles in forma JSON definiemus.

{
    "username" : "admin@yourstore.com",
    "password" : "admin",
    "adminUrl" : "https://admin-demo.nopcommerce.com/admin/"
}
figere 1
Exemplum file fixture

Accessiones valores e file fixture in test lima

Quia definivimus valores nostros JSON in the documentorum.json fasciculus, videbimus quomodo ad eos accedere possumus in lima nostra testiculorum adfixa cupressi utentibus.

Nos mos access ad fixture notitia usura the this keyword in conspectu hamo

describere("Fixtures Cupressus Exemplum", function () { ante( functionem () { cy.fixture(credentiales').tunc(munus (testdata) { this.testdata = testdata }) }) })

In exemplo superiore, lima per JSON nostrum accessum habemus cy.fixture ( 'credentials'). Quia nostrum JSON file nomen est documentorum.json, sumus tabella nomen transiens in cy.fixture (). Nunc alias conceptu utimur et notiones nostras definimus test notitia. Cum variabilis test notitia, valores usoris et tesserae in documento nostro testi uti possumus

describere ("Fixtures Cupressus Exemplum", function () { ante( functionem () { cy.fixture(credentiales').tunc(munus testdata) { this.testdata = testdata }) }) illud(" Login cum validis documentorum ", function () { cy.visit(this.testdata.adminUrl) cy.get('[id=Email]').clear() cy.get('[id=Email]'). .username) cy.get('[id=Password]').clear() cy.get('[id=Password]').type(this.testdata.password) cy.get('[type=submit] ) .click(), cy.url()('be.aequale', this.testdata.adminUrl) });

Ut videre potes supra, in .type() transiimus valorem documentorum.json file as this.testdata.username. Similiter, ad tesseram valorem utendi accessimus this.testdata.password. Pro domicilio, eodem modo utimur quo username et password.

Cum casus probatus curritur, videre potes valorem in ashboardday excudere. Hoc modo, causam nostram examinis exsecuti sumus utentes cupressi fixtures

figere 2
Test eventus fixture

Cupressus Multiplex fixtures

In hac sectione, intelligemus de fixturis cupressis uti cum multis imaginibus fixturis.

Si velimus varias notitias fixturas pro eodem documento uti, exempli gratia: binae documentorum copiae sunt necessariae pro pagina login cognoscere, quomodo ad tabulas accedere possumus?

Unus modus est plures scribere it caudices quae in eodem codice iterum iterumque replicant. Alio modo uti possumus Adfixa cypressus accedere diversis test data in spec- file. Videamus quomodo consequi possumus utentes adfixa cupressi?

Nos iam fixture file vocavit documentorum.json.

{
    "username" : "admin@yourstore.com",
    "password" : "admin",
    "adminUrl" : "https://admin-demo.nopcommerce.com/admin/"
}

Nunc alium fixturam fasciculi nominem crearemus userData.json ubi aliud nomen username et password utemur.

{
    "username" : "user@yourstore.com",
    "password" : "user",
    "adminUrl" : "https://admin-demo.nopcommerce.com/admin/"
}

Nunc videamus quomodo ad duas notitias varias in tabella testi nostra accedere possumus.

Eundem tabellam testium emendabimus utendi condicione utendi duobus diversis fasciculis fixturis.

const testValueFixtures = [ { "name": "credentiales", "context": "1" }, { "nomen": "userData", "context": "2" } ] describe('Automation Test Suite - Fixtures', function () { //looping per utrumque adfixa testValueFixtures.forEach((fixtureData) => { describe(fixtureData.context, () => { // accessio test data e tabella fixtura ante( functionem () { cy. fixture(fixtureData.name).then(munus(testData) { this.testData = testData; }) }) illud("login", function () { cy.visit('https://admin-demo.nopcommerce.com /admin/') cy.get('[id=Email]').clear() cy.get('[id=Email]').type(this.testData.username) cy.get('[id= Signum]').clear() cy.get('[id=Password]').type(this.testData.password) cy.get('[type=submittere]').click(); .ut('be.aequa', this.testData.adminUrl) }) }) }) })
figere 3
Accessing duo exempla notitia fixture

Initio variabiles creantes vocantur testValueFixtures ut ordinata ubi contextum duorum imaginum fixturae creamus. in primo contextu, transimus nomen.documentorumand the second as ' .userData', ut nomina fasciculi JSON nostri repraesentant ubi definitum valorem nostrum habemus.

Secundo per dissociamus variabiles fixturas in describendo scandalum. Et, ut antea disputavimus, notitias ante scandalum accessimus utendo .this()

Reliquum codicem idem est, ubi notas transimus in cy.get()

Cum probationem nostram exequimur, in duas lineas discurret ubi primus casus cum validis documentorum transit et secundus ob documentorum invaliditatem deficit.

figere 4
Fixture per primam fixture file

Ut videre potes supra in snapshot, primus casus temptans transit et incidit valorem e file figtura primi documentorum.json

figere 5
Exemplum fixture utens in secundo file fixture

Ut videre potes in screenshot supra, probatio defecit et valores e tabula secundo fixture transierunt userData.json

Inspicere etiam potes quomodo scribere cupressus adfixa utens pagina Object Model hic

Scroll To Top