Pada si ile-iwe: bii o ṣe le kọ awọn oludanwo afọwọṣe lati koju awọn idanwo adaṣe

Mẹrin ninu marun awọn olubẹwẹ QA fẹ lati kọ ẹkọ bi wọn ṣe le ṣiṣẹ pẹlu awọn idanwo adaṣe. Kii ṣe gbogbo awọn ile-iṣẹ le mu iru awọn ifẹ ti awọn idanwo afọwọṣe ṣiṣẹ lakoko awọn wakati iṣẹ. Wrike ṣe ile-iwe adaṣe adaṣe kan fun awọn oṣiṣẹ ati rii ifẹ yii fun ọpọlọpọ. Mo kopa ninu ile-iwe ni pato bi ọmọ ile-iwe QA kan.

Mo kọ ẹkọ bii o ṣe le ṣiṣẹ pẹlu Selenium ati ni bayi ṣe atilẹyin ni ominira nọmba kan ti awọn idanwo adaṣe pẹlu fere ko si iranlọwọ ita. Ati pe, da lori awọn abajade ti iriri apapọ wa ati awọn ipinnu ti ara ẹni, Emi yoo gbiyanju lati ṣe agbekalẹ agbekalẹ pupọ fun ile-iwe adaṣe ti o dara julọ julọ.

Iriri Wrike ni siseto ile-iwe kan

Nigbati iwulo fun ile-iwe adaṣe kan di mimọ, agbari rẹ ṣubu si Stas Davydov, oludari imọ-ẹrọ ti adaṣe. Ta ló tún lè ṣàlàyé ìdí tí wọ́n fi gbé ìgbésẹ̀ yìí, yálà wọ́n ṣàṣeyọrí àti bóyá wọ́n kábàámọ̀ àkókò tí wọ́n lò? Jẹ ki a fun u ni pakà:

- Ni ọdun 2016, a kọ ilana tuntun fun awọn adaṣe adaṣe ati ṣe ki o rọrun lati kọ awọn idanwo: awọn igbesẹ deede han, eto naa di oye pupọ diẹ sii. A wa pẹlu imọran kan: a nilo lati kan gbogbo eniyan ti o fẹ lati kọ awọn idanwo tuntun, ati lati jẹ ki o rọrun lati ni oye, a ṣẹda lẹsẹsẹ awọn ikowe. A ṣe apejọpọ pẹlu eto awọn koko-ọrọ, ọkọọkan awọn olukọni ọjọ iwaju mu ọkan fun ara wọn ati pese ijabọ kan lori rẹ.

— Awọn iṣoro wo ni awọn ọmọ ile-iwe ni?

- Ni akọkọ, dajudaju, faaji. Awọn ibeere pupọ lo wa nipa eto awọn idanwo wa. Ni awọn esi, ọpọlọpọ ni a kọ lori koko yii ati pe a ni lati mu awọn ikowe afikun lati ṣe alaye ni alaye diẹ sii.

— Njẹ ile-iwe naa sanwo?

- Bẹẹni, dajudaju. O ṣeun fun u, ọpọlọpọ awọn eniyan ni o ni ipa ninu awọn idanwo kikọ, ati, ni apapọ, ni ile-iwosan, gbogbo eniyan bẹrẹ si ni oye daradara kini awọn afọwọṣe, bi a ti kọ wọn ati bi wọn ṣe ṣe ifilọlẹ. Ẹru lori awọn onimọ-ẹrọ adaṣe tun ti dinku: ni bayi a gba ọpọlọpọ igba diẹ awọn ibeere fun iranlọwọ pẹlu itupalẹ awọn idanwo, niwọn igba ti awọn oludanwo ati awọn olupilẹṣẹ ti bẹrẹ lati koju funrararẹ ni gbogbo awọn ipo. O dara, ọpọlọpọ awọn anfani inu wa fun ẹka naa: a ni iriri ni awọn ifarahan ati awọn ikowe, o ṣeun si eyiti diẹ ninu awọn onimọ-ẹrọ adaṣe ti ṣakoso tẹlẹ lati ṣe awọn ifarahan ni awọn apejọ, ati tun gba ṣeto awọn fidio ati awọn igbejade ti o lagbara fun awọn awọleke tuntun.

Fun ara mi, Emi yoo ṣafikun pe ibaraẹnisọrọ laarin awọn ẹka wa ti ni irọrun si ipele ti o rọrun ẹgan. Fun apẹẹrẹ, ni bayi Emi ko nilo lati ronu nipa iru awọn ọran ati ni ipele atomity lati ṣe adaṣe. Bi abajade, gbogbo awọn ẹgbẹ ti o nifẹ ti n ṣe itọju ni kikun ti agbegbe idanwo, eyiti o dagba nigbagbogbo. Ko si ẹnikan ti o beere ohun ti ko ṣee ṣe lati ọdọ awọn miiran.

Ni gbogbogbo, ipa lori iṣẹ ti awọn ẹgbẹ jẹ dajudaju rere. Boya awọn ẹlẹgbẹ ti n ka nkan yii tun n ronu nipa ṣiṣe nkan ti o jọra? Lẹhinna imọran yoo rọrun: o tọ si ti awọn idanwo adaṣe jẹ pataki fun ọ. Nigbamii ti, a yoo sọrọ nipa ibeere ti o ni idiwọn diẹ sii: bawo ni a ṣe le ṣeto gbogbo eyi ni deede bi o ti ṣee ṣe, ki awọn iye owo ti gbogbo awọn ẹgbẹ jẹ iwonba ati pe o pọju.

Italolobo fun jo

Ile-iwe naa wulo, ṣugbọn, gẹgẹ bi Stas ti gba, awọn iṣoro kan wa, nitori eyiti o jẹ dandan lati ṣeto awọn ikowe afikun. Ati pe o jẹ bi ọmọ ile-iwe aipẹ kan ti o ṣe afiwe ara mi-in-aimọkan ati ara mi-bayi pe Mo ṣe agbekalẹ awọn igbesẹ wọnyi lati ṣẹda, ni ero mi, ọna pipe lati kọ awọn oludanwo lati loye awọn idanwo adaṣe.

Igbesẹ 0. Ṣẹda iwe-itumọ

Nitoribẹẹ, igbesẹ yii ko nilo fun QA nikan. Sibẹsibẹ, Mo fẹ lati jẹ ki o fojuhan: koodu ipilẹ adaṣe gbọdọ wa ni fipamọ ni fọọmu kika. Awọn ede siseto - kii kere julọ awọn ede, ati lati yi o le bẹrẹ rẹ besomi.

Pada si ile-iwe: bii o ṣe le kọ awọn oludanwo afọwọṣe lati koju awọn idanwo adaṣe

Eyi ni sikirinifoto ti wiwo iṣẹ-ṣiṣe pẹlu awọn orukọ ti awọn eroja. Jẹ ki a fojuinu pe o n ṣe idanwo wiwo iṣẹ-ṣiṣe bi apoti dudu ati pe ko tii ri Selenium ninu igbesi aye rẹ rara. Kini koodu yii ṣe?

Pada si ile-iwe: bii o ṣe le kọ awọn oludanwo afọwọṣe lati koju awọn idanwo adaṣe

(Spoiler - iṣẹ-ṣiṣe ti paarẹ nipasẹ isinmi ni ipo abojuto, lẹhinna a rii pe igbasilẹ kan wa ninu ṣiṣan naa.)

Igbesẹ yii nikan mu awọn ede QAA ati QA wa ni isunmọ. O rọrun fun awọn ẹgbẹ adaṣe lati ṣe alaye awọn abajade ti ṣiṣe kan; Sibẹsibẹ, gbogbo eniyan loye ara wọn. A gba awọn winnings paapaa ṣaaju ikẹkọ gangan bẹrẹ.

Igbesẹ 1. Tun awọn gbolohun ọrọ tun

Jẹ ki a tẹsiwaju ni afiwe pẹlu ede. Nigba ti a ba kọ ẹkọ lati sọrọ bi ọmọde, a ko bẹrẹ lati Etymology ati atunmọ. A tun ṣe “Mama”, “ra nkan isere”, ṣugbọn maṣe lọ lẹsẹkẹsẹ sinu awọn ipilẹ Proto-Indo-European ti awọn ọrọ wọnyi. Nitorinaa o wa nibi: ko si aaye ni omiwẹ sinu ijinle pupọ ti awọn ẹya imọ-ẹrọ ti awọn adaṣe adaṣe laisi igbiyanju lati kọ nkan ti o ṣiṣẹ.
O ba ndun kekere kan counterintuitive, ṣugbọn o ṣiṣẹ.

Ninu ẹkọ akọkọ, o tọ lati funni ni ipilẹ bi o ṣe le kọ awọn adaṣe adaṣe taara. A ṣe iranlọwọ lati ṣeto agbegbe idagbasoke (ninu ọran mi, Intellij IDEA), ṣe alaye awọn ofin ede ti o kere ju ti o jẹ pataki lati kọ ọna miiran ni kilasi ti o wa tẹlẹ nipa lilo awọn igbesẹ ti o wa tẹlẹ. A kọ awọn idanwo kan tabi meji pẹlu wọn ki o fun wọn ni iṣẹ amurele, eyiti Emi yoo ṣe ọna kika bii eyi: ẹka ti o wa ni pipa lati ọdọ oluwa, ṣugbọn awọn idanwo pupọ ti yọ kuro ninu rẹ. Awọn apejuwe wọn nikan ni o ku. A beere lọwọ awọn oludanwo lati mu pada awọn idanwo wọnyi (kii ṣe nipasẹ iyatọ ifihan, dajudaju).

Bi abajade, ẹniti o gbọ ti o si ṣe ohun gbogbo yoo ni anfani lati:

  1. kọ ẹkọ lati ṣiṣẹ pẹlu wiwo ayika idagbasoke: ṣiṣẹda awọn ẹka, awọn bọtini gbigbona, ṣe ati titari;
  2. Titunto si awọn ipilẹ ti eto ti ede ati awọn kilasi: nibo ni lati fi awọn abẹrẹ sii ati ibiti o ti gbe wọle, idi ti a fi nilo awọn akọsilẹ, ati iru awọn ami ti o wa nibẹ, ni afikun si awọn igbesẹ;
  3. ye iyato laarin igbese, duro ati ki o ṣayẹwo, ibi ti lati lo ohun ti;
  4. ṣe akiyesi iyatọ laarin awọn adaṣe adaṣe ati awọn sọwedowo afọwọṣe: ni awọn adaṣe adaṣe o le fa ọkan tabi oluṣakoso miiran dipo ṣiṣe awọn iṣe nipasẹ wiwo. Fun apẹẹrẹ, firanṣẹ asọye taara si ẹhin dipo ṣiṣi wiwo iṣẹ-ṣiṣe, yiyan titẹ sii, titẹ ọrọ ati tite bọtini Firanṣẹ;
  5. ṣe agbekalẹ awọn ibeere ti yoo dahun ni igbesẹ ti nbọ.

Ojuami ti o kẹhin jẹ pataki pupọ. Awọn idahun wọnyi ni a le fun ni nirọrun ṣaaju akoko, ṣugbọn o jẹ ilana ikẹkọ pataki ti o dahun laisi awọn ibeere ti a ṣe agbekalẹ ko ni iranti ati pe a ko lo nigbati o nilo nikẹhin.

Yoo jẹ apẹrẹ ti o ba jẹ pe ni akoko yii ẹlẹrọ adaṣe adaṣe lati ẹgbẹ QA ti yan iṣẹ-ṣiṣe kan pẹlu kikọ awọn idanwo meji ni ogun ati gba ọ laaye lati tẹriba si ẹka rẹ.

Kini lati fun:

  1. imọ-jinlẹ diẹ sii ti iṣẹ ṣiṣe ti agbegbe idagbasoke ati ede siseto funrararẹ, eyiti yoo nilo nikan nigbati o ba ṣiṣẹ pẹlu awọn ẹka ni ominira. Kii yoo ṣe iranti rẹ, iwọ yoo ni lati ṣalaye rẹ lẹẹmeji tabi lẹẹmẹta, ṣugbọn a ni idiyele akoko ti awọn onimọ-ẹrọ adaṣe, otun? Awọn apẹẹrẹ: ipinnu awọn ija, fifi awọn faili kun si git, ṣiṣẹda awọn kilasi lati ibere, ṣiṣẹ pẹlu awọn igbẹkẹle;
  2. ohun gbogbo jẹmọ si xpath. Ni pataki. O nilo lati sọrọ nipa rẹ lọtọ, ni ẹẹkan ati ni idojukọ pupọ.

Igbesẹ 2. Ṣiṣayẹwo ni pẹkipẹki ni ilo-ọrọ naa

Jẹ ki a ranti sikirinifoto wiwo iṣẹ-ṣiṣe lati igbesẹ #0. A ni igbesẹ kan ti a pe ni checkCommentWithTextExists. Oluṣewadii wa ti loye ohun ti igbesẹ yii ṣe ati pe a le wo inu igbesẹ naa ki o si decompose rẹ diẹ.

Ati ni inu ti a ni awọn wọnyi:

onCommentBlock(userName).comment(expectedText).should(displayed());

Nibo onCommentBlock wa

onCommonStreamPanel().commentBlock(userName);

Ni bayi a kọ ẹkọ lati sọ pe ko “ra nkan isere,” ṣugbọn “ra nkan isere kan lati ile itaja Detsky Mir, ti o wa ninu minisita buluu lori selifu kẹta lati oke.” O jẹ dandan lati ṣe alaye pe a tọka si nkan kan ni atẹlera, lati awọn eroja ti o tobi julọ (sisan -> bulọki pẹlu awọn asọye lati ọdọ eniyan kan -> apakan ti bulọọki yii nibiti ọrọ ti a sọ pato joko).

Rara, ko to akoko lati sọrọ nipa xpath. Kan sọ ni ṣoki pe gbogbo awọn ilana wọnyi jẹ apejuwe nipasẹ wọn ati pe ogún lọ nipasẹ wọn. Sugbon a nilo lati soro nipa gbogbo awọn wọnyi awọn baramu ati awọn waiters; Ṣugbọn maṣe ṣe apọju: ọmọ ile-iwe rẹ le ṣe iwadi awọn iṣeduro ti o nipọn diẹ sii funrararẹ nigbamii. O ṣeese, yẹ, duroTiti, ṣafihan ();, tẹlẹ ();, ko yẹ ki o to.

Iṣẹ amurele jẹ kedere: ẹka kan ninu eyiti awọn akoonu ti awọn igbesẹ pupọ ti o jẹ pataki fun nọmba kan ti awọn idanwo ti yọkuro. Jẹ ki awọn oluyẹwo mu pada wọn ki o jẹ ki ṣiṣe naa jẹ alawọ ewe lẹẹkansi.

Ni afikun, ti ẹgbẹ idanwo ko ni awọn ẹya tuntun nikan ninu iṣẹ rẹ, ṣugbọn tun diẹ ninu awọn atunṣe kokoro, o le beere lọwọ rẹ lati kọ awọn idanwo lẹsẹkẹsẹ fun awọn idun wọnyi ki o tu wọn silẹ. O ṣeese julọ, gbogbo awọn eroja ti tẹlẹ ti ṣalaye; Eyi yoo jẹ adaṣe pipe.

Igbesẹ 3. Immersion ni kikun

Ni pipe bi o ti ṣee fun oluyẹwo ti yoo tẹsiwaju lati ṣe awọn iṣẹ taara rẹ. Ni ipari, a nilo lati sọrọ nipa xpath.

Ni akọkọ, jẹ ki a jẹ ki o ye wa pe gbogbo awọn wọnyi loriCommentBlock ati asọye jẹ apejuwe nipasẹ wọn.

Pada si ile-iwe: bii o ṣe le kọ awọn oludanwo afọwọṣe lati koju awọn idanwo adaṣe

Lapapọ:

"//div[contains(@class, ‘stream-panel’)]//a[contains(@class,'author') and text()='{{ userName }}’]//div[contains(@class,'change-wrapper') and contains(.,'{{ text }}’)]"

Ilana ti itan jẹ pataki pupọ. Ni akọkọ, a mu eyikeyi xpath ti o wa tẹlẹ ati ṣafihan bi taabu eroja ṣe ni ọkan ati ipin kan ṣoṣo. Nigbamii, a yoo sọrọ nipa eto naa: nigba ti o nilo lati lo WebElement, ati nigbati o nilo lati ṣẹda faili lọtọ fun eroja tuntun. Eyi yoo gba ọ laaye lati ni oye ogún daradara.

O gbọdọ sọ ni gbangba pe ipin kan jẹ gbogbo wiwo iṣẹ-ṣiṣe, o ni ipin ọmọ kan - gbogbo ṣiṣan, eyiti o ni ipin ọmọ kan - asọye lọtọ, ati bẹbẹ lọ. Awọn eroja ọmọde wa ninu awọn eroja obi mejeeji lori oju-iwe ati ni eto ti ilana adaṣe adaṣe.

Ni aaye yii, awọn olugbo yẹ ki o ti loye gidi bi wọn ṣe jogun ati ohun ti o le wọle lẹhin aami ni onCommentBlock. Ni aaye yii, a ṣe alaye gbogbo awọn oniṣẹ: /, //, ., [] ati bẹbẹ lọ. A ṣafikun imọ nipa lilo sinu ẹru naa @class ati awọn nkan pataki miiran.

Pada si ile-iwe: bii o ṣe le kọ awọn oludanwo afọwọṣe lati koju awọn idanwo adaṣe

Awọn ọmọ ile-iwe yẹ ki o loye bi wọn ṣe le tumọ xpath ni ọna yii. Lati ṣopọ - iyẹn tọ, iṣẹ amurele. A pa awọn apejuwe ti awọn eroja, jẹ ki wọn mu pada iṣẹ ti awọn igbeyewo.

Kini idi ti ọna pataki yii?

A ko yẹ ki o ṣe apọju eniyan ti o ni imọ idiju, ṣugbọn a gbọdọ ṣalaye ohun gbogbo ni ẹẹkan, ati pe eyi jẹ atayanyan ti o nira. Ọna yii yoo gba wa laaye lati kọkọ jẹ ki awọn olutẹtisi beere awọn ibeere ati ki o ko loye nkankan ki o dahun wọn ni akoko ti n bọ. Ti o ba sọrọ nipa gbogbo faaji, lẹhinna nipasẹ akoko ti a ṣe itupalẹ koko-ọrọ ti awọn igbesẹ tabi xpath, awọn ẹya pataki julọ ti rẹ yoo ti gbagbe tẹlẹ nitori aibikita wọn.

Sibẹsibẹ, diẹ ninu yin yoo ṣee ṣe ni anfani lati pin iriri rẹ lori bii ilana naa ṣe le ṣe iṣapeye paapaa diẹ sii. Emi yoo dun lati ka iru awọn imọran ninu awọn asọye!

orisun: www.habr.com

Fi ọrọìwòye kun