Autonomy dokumentatsioon
Migreerimine

Maestro

Muuda Maestro YAML-vood oodatud tulemuste sammudest koosnevateks Autonomy Androidi testjuhtumiteks, ilma tapOn selektorite ja ootamisteta.

Maestro vood on juba lühikesed ja deklaratiivsed. Migreerimine säilitab selle, mida iga voog kontrollib, ja jätab kõrvale käsud, mis selleni viivad: tapOn, inputText, scroll ja nende vahelised ootamised.

Viip

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

Codetext
Migreeri selle hoidla Maestro vood 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. Kontrolli, et sellel on voogude appId jaoks android-sihtmärk; kui pole, ütle mulle seda enne, kui midagi lood.
2. Kutsu autonomy_test_case_list selle projectId-ga. Jäta vahele vood, mida mõni olemasolev testjuhtum juba katab.

Iga voo jaoks
3. Loo tööriistaga autonomy_test_case_create ÜKS testjuhtum: projectId, name = voo nimi või failinimi, platforms = ["android"]. iOS-i testimine pole veel saadaval: jäta ainult iOS-i vood vahele ja loetle need mulle. Ära migreeri eraldi alamvoogusid, mis käivituvad ainult teistest voogudest.
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 voog tõestab, mitte kuidas: ei mingeid tapOn-, inputText- ega scroll-käske, selektoreid ega ootamisi. Üks samm võib hõlmata mitut käsku, mis teenivad üht oodatud tulemust. Kasuta kuni 12 sammu; jaga pikem voog 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 vood sisse logivad (sageli sisselogimise alamvoog), 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 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 voog käib (tekst, mida assertVisible kontrollib, kupong, mis peab rakenduma, sisend, mis peab tagasi lükatama): data-manus väärtusega exact: true. Muud env-i väärtused: {{env.NAME}}.
8. Registreerimisandmed (e-posti aadressid, nimed, paroolid, telefoninumbrid, evalScripti juhuslikud väärtused): värske postkast, phone-manus ja genereeritud andmed, mitte kunagi fikseeritud väärtus.
9. Too runFlow alamvood sisse neid kutsuvate voogude oodatud tulemustesse. Jäta kõrvale launchApp koos clearState'iga (iga käivitus algab puhta paigaldusega), extendedWaitUntil, waitForAnimationToEnd, retry ja repeat-plokid, mis ainult ootavad.

Pärast seda
10. Kui vood on rühmitatud (sildid, kaustad, konfiguratsiooni include'id), 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ähtevoog, testjuhtumi ID, sammude arv ja kõik, mida sa vastendada ei saanud.

Vastendus

MaestroAutonomy
Üks voofailÜks testjuhtum.
appIdRakenduse build keskkonna Android sihtmärgil. Vaata Mobiilibuild'id.
tags, kaustad, konfiguratsiooni include'idSoovi korral testiplaan.
tapOn, inputText, scroll, swipe, backSulanduvad sammu oodatud tulemusse. Agent leiab juhtelemendid ise.
assertVisible: "Order placed"Oodatud tulemus, kus Order placed on data-manus, mis on märgitud Exact-väärtuseks.
assertNotVisibleOodatud tulemus, mis ütleb, mida ei tohi näidata, näiteks „Veateate riba ei ole nähtav“.
launchApp koos clearState'igaJäetakse kõrvale. Iga käivitus algab puhta paigaldusega ja väljalogituna.
extendedWaitUntil, waitForAnimationToEnd, retryJäetakse kõrvale.
runFlowTuuakse kutsuva voo oodatud tulemustesse. Sisselogimise alamvoost saab sisselogimise samm koos salvestatud sisselogimisega.
env ja ${VAR}{{env.VAR}}, mandaadi puhul märgitud saladuseks.
evalScript juhuslikud andmedGenereeritud andmed või e-posti aadresside jaoks Fresh inbox per run.
takeScreenshotscreenshot-manus.
repeatÜks oodatud tulemus, mis ütleb lõpptulemuse, näiteks „Ostukorvis on kolm toodet“.

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

Ei leidnud?

On this page