Autonomy dokumentatsioon
Migreerimine

Cypress

Muuda iga Cypressi test üheks oodatud tulemuste sammudest koosnevaks Autonomy testjuhtumiks, ilma selle cy.get ahelate, intercept'ide ja kohandatud käskudeta.

Cypressi testikomplektid kannavad palju raamistiku raskust: cy.get ahelad, cy.intercept aliased ja Cypress.Commands.add abifunktsioonid. Midagi sellest üle ei tule. Üle tuleb see, mida iga test tõestab.

Viip

Kleebi see hoidla seest kodeerimisagenti, mis on ühendatud Autonomy MCP-serveriga:

Codetext
Migreeri selle hoidla Cypressi testid Autonomy MCP tööriistadega Autonomysse.

Seadistamine
1. Kutsu autonomy_project_list ja küsi minult, millist projekti kasutada. Kutsu autonomy_environment_list selle projectId-ga ja küsi minult, millises keskkonnas käivitada.
2. Kutsu autonomy_test_case_list selle projectId-ga. Jäta vahele testid, mida mõni olemasolev testjuhtum juba katab.

Iga testi jaoks
3. Loo tööriistaga autonomy_test_case_create ÜKS testjuhtum: projectId, name = it() pealkiri, platforms = ["web"].
4. Kirjuta iga samm oodatud tulemusena: mis on tõsi, kui samm on tehtud, tavaliste sõnadega („Uue e-posti aadressi jaoks on olemas uus konto“). Ütle, mida test tõestab, mitte kuidas: ei mingeid klõpse, selektoreid, ootamisi, korduskatseid ega should-kutseid. Üks samm võib hõlmata mitut tegevust, mis teenivad üht oodatud tulemust. Kasuta kuni 12 sammu; jaga pikem test mitmeks testjuhtumiks.
5. Iga samm on {id, text, attachments[]}. Igal manusel on id, kind ja exact. Liigid: account {role}, inbox (ilma aadressita = iga käivituse jaoks värske postkast), phone, file, screenshot, data {label, value} või genereeritud andmete jaoks {label, intent}.
6. Ära kunagi kirjuta sammu parooli, tokenit ega võtit. Iga konto puhul, millega testikomplekt sisse logib (cy.login, cy.session, fixture'id), palu mul see töölaual salvestada (projekti Sign-ins, New sign-in) ja öelda sulle selle kontonimi, ning alusta testi sammuga, näiteks „Poe omanik on sisse logitud“, millele on see konto manustatud. Muude Cypress.env-is olevate saladuste jaoks paku välja nimed ja viita neile kujul {{env.NAME}}; lisa need saladustena tööriistaga autonomy_environment_upsert alles pärast minu nõusolekut.
7. Väärtused, mille kohta test käib (tekst või number, mida should kontrollib, kupong, mis peab rakenduma, sisend, mis peab tagasi lükatama): data-manus väärtusega exact: true. Muu konfiguratsioon: {{env.NAME}}.
8. Registreerimisandmed (e-posti aadressid, nimed, paroolid, juhuslikud järelliited): värske postkast ja genereeritud andmed, mitte kunagi fikseeritud väärtus.
9. Too iga cypress/support kaustas olev kohandatud käsk sisse sellesse, mida test tõestab. Jäta cy.intercept stub'id kõrvale: käivitused testivad päris toodet. Kui test töötab ainult stub'itud vastustega, ära seda migreeri, vaid loetle see. Muuda cy.wait('@alias') kontrollid oodatud tulemuseks selle kohta, mida kasutaja näeb.

Pärast seda
10. Kui testikomplekt rühmitab teste (describe- ja context-plokid, spec-kaustad, sildid), paku iga rühma jaoks tööriistaga autonomy_test_plan_create testiplaani loomist.
11. Käivita üks migreeritud testjuhtum tööriistaga autonomy_run_trigger minu valitud keskkonnas. Jälgi seda tööriistaga autonomy_run_get (anna kaasa viimane cursor ja waitMs), kuni see lõpeb. Iga sammu puhul, mis ei läbinud, loe autonomy_run_step_actions ja ütle mulle, mis juhtus.
12. Lõpeta tabeliga: lähtetest, testjuhtumi ID, sammude arv ja kõik, mida sa vastendada ei saanud.

Vastendus

CypressAutonomy
it()Üks testjuhtum.
describe(), context(), spec-kaustadSoovi korral testiplaan.
cy.visit, cy.get(...).click(), type(), data-cy konksudSulanduvad sammu oodatud tulemusse. Agent leiab juhtelemendid ise.
should("contain", "Order placed")Oodatud tulemus, kus Order placed on data-manus, mis on märgitud Exact-väärtuseks.
cy.wait(ms), korduskatsed, ajalimiididJäetakse kõrvale.
cy.login(), cy.session()Sisselogimise samm, millele on account-manusena lisatud salvestatud sisselogimine.
Kohandatud käsudSulanduvad neid kutsuvate testide oodatud tulemustesse.
cy.fixture() andmedExact-andmed, kui test neid kontrollib, muul juhul testandmed või {{env.NAME}}. Mandaatidest saavad sisselogimised.
Cypress.env("X"){{env.X}}, mandaadi puhul märgitud saladuseks.
baseUrlKeskkonna Web sihtmärk.
selectFile()file-manus projekti jaotisest Files.
cy.screenshot()screenshot-manus.
cy.intercept() stub'idEi migreerita. Käivitused kasutavad päris toodet.
cy.wait("@alias") kontrollidOodatud tulemus selle tulemuse kohta. Käivitus säilitab iga päringu oma vahekaardil Network.
cy.request() API-testidTestjuhtum API platvormil. Vaata API ja võrk.

Läbitöötatud näite leiad migreerimise ülevaatest.

Ei leidnud?

On this page