Awọn anfani:
- Loye idi ti idanwo ipadasẹhin ati ni anfani lati yan awọn idanwo ati gbejade awọn ọran ipadasẹhin ni ibamu si awọn ayipada pẹlu oye atọwọda
- Agbara lati ṣe iwadii awọn idi root ti awọn idanwo ẹlẹgẹ (akoko, igbẹkẹle aṣẹ, ipinlẹ pinpin, igbẹkẹle ita) ati lo awọn solusan ayeraye laisi titẹ aami aisan naa
- Agbara lati ṣetọju ibawi ti ṣiṣe idasilẹ ni kikun package lakoko titọju suite ifaseyin ni iyara, ominira ati igbẹkẹle nipasẹ imukuro idanwo ẹda-iwe
Software yipada nigbagbogbo; Gbogbo ẹya tuntun, gbogbo atunṣe, le fọ nkan ti o ṣiṣẹ tẹlẹ. Idalọwọduro atẹle ti iṣẹ iṣẹ iṣaaju ni a pe ni ipadasẹhin. Idanwo ipadasẹhin n ṣe idanwo iṣẹ ṣiṣe ti o wa pẹlu iyipada kọọkan lati yẹ awọn ibajẹ wọnyi. Ni akoko pupọ, awọn ipele idanwo wọnyi dagba tobi - awọn ẹgbẹẹgbẹrun awọn idanwo - ati awọn iṣoro nla meji dide: suite naa fa fifalẹ, ati awọn idanwo flaky - awọn idanwo ti ko ni igbẹkẹle ti o kọja nigbakan ati nigbakan kuna ni koodu kanna - run igbẹkẹle ẹgbẹ ninu awọn abajade idanwo. Oye itetisi atọwọdọwọ (AI) jẹ iranlọwọ ti o lagbara ni titọju suite regression ni itọju daradara, iyara ati igbẹkẹle. Ṣugbọn akiyesi aarin wa: Lakoko ti AI le funni lati “ṣe kọja” idanwo ẹlẹgẹ, o le nigbagbogbo gbejade alemo kan ti o bo kokoro gidi kan. Iṣẹ rẹ ni lati wa idi ipilẹ ti aisedeede, kii ṣe lati dinku aami aisan naa.
Awọn idi gbongbo ti awọn idanwo ẹlẹgẹ
Idanwo ẹlẹgẹ jẹ iṣoro idanwo aṣiwere julọ: ko ni igbẹkẹle boya o kọja tabi kuna, titari ẹgbẹ naa sinu ihuwasi ti “o gbọdọ ti di lẹẹkansi, tun ṣiṣẹ lẹẹkansi” - ati pe aṣa yii yoo kọju kokoro gidi ni ọjọ kan bi “flaky”. Awọn idi pataki ti gbongbo:
- Ipo akoko/ije: Idanwo naa ṣayẹwo abajade laisi iduro fun iṣẹ kan lati pari. Idi ti o wọpọ julọ.
- Igbẹkẹle aṣẹ: Awọn idanwo da lori data ti o fi silẹ nipasẹ ara wọn; O ṣẹ nigbati aṣẹ ba yipada.
- Idi ti a pin: Awọn idanwo pupọ lo data idanwo kanna/olumulo, ti o fi ori gbarawọn.
- Igbẹkẹle ita: Nẹtiwọọki gidi, iṣẹ ẹnikẹta, akoko eto, iye laileto.
- Iyatọ ayika: Yipada si agbegbe, duro ni CI (ayika iṣọpọ ilọsiwaju).
Išọra: Gbigbe idanwo ẹlẹgẹ nipasẹ “gbiyanju awọn akoko diẹ” yoo ma boju-boju nigbagbogbo aṣiṣe concurrency gidi kan. Tun gbiyanju jẹ ohun elo iwadii, kii ṣe itọju kan. Wa idi root akọkọ; Lo tun gbiyanju nikan bi ohun asegbeyin ti o kẹhin fun iwe-ipamọ, nitootọ aisedeede ita.
Itọju idanwo: titọju package ni ilera
Suite ifasẹyin dabi ọgba; Ti ko ba ṣe itọju, awọn èpo yoo gba. AI ṣe iranlọwọ ni awọn iṣẹ ṣiṣe itọju mẹta:
1. Pidánpidán / kobojumu igbeyewo ninu. Ni akoko pupọ nọmba nla ti awọn ọran kojọpọ idanwo ohun kanna. AI daba kikojọ ati dapọ awọn idanwo ti o jọra.
2. Ayẹwo idanwo ẹlẹgẹ. O fun AI koodu idanwo ati apẹẹrẹ aisedeede; daba ṣee ṣe root okunfa ati ki o yẹ ojutu.
3. Igbeyewo aṣayan / ayo. O jẹ gbowolori lati ṣiṣe gbogbo package pẹlu iyipada kọọkan. Pẹlu itupalẹ ikolu idanwo (yiyan awọn idanwo ti o yẹ nikan ti o da lori koodu iyipada), AI ṣeduro iru awọn idanwo yẹ ki o ṣiṣẹ ni akọkọ. Bibẹẹkọ, idii itusilẹ ni kikun jẹ dandan.
Quarantine: iṣakoso idanwo ẹlẹgẹ ni ẹtọ
O ti rii pe idanwo kan jẹ ẹlẹgẹ, ṣugbọn iwọ ko ni akoko lati ṣatunṣe idi root lẹsẹkẹsẹ. Kin ki nse? Awọn ọna aṣiṣe meji lo wa: lati pa idanwo naa rẹ patapata (iwa naa ko ni ipamọ rara) tabi lati pa ẹnu rẹ mọ pẹlu atunbi (ti o bo kokoro gidi naa). Ọna ti o pe ni lati ya sọtọ (yiya sọtọ idanwo ẹlẹgẹ fun igba diẹ lati package akọkọ ati titọpa rẹ ni atokọ lọtọ). Idanwo iyasọtọ ko ṣe idiwọ iṣọpọ ẹya, ṣugbọn o jẹ gbese ti o han ati pe a koju nigbagbogbo. Koko pataki ni eyi: ipinya jẹ yara idaduro, kii ṣe apo idọti kan. Ti atokọ quarantine ba n dagba, eyi jẹ itaniji pe ilera idanwo ti ẹgbẹ naa n bajẹ. AI le ṣe atunyẹwo atokọ quarantine rẹ lorekore ki o ṣe akojọpọ nipasẹ awọn ilana idi root; O jẹ ki awọn ojutu apapọ ṣiṣẹ nipasẹ ṣiṣafihan awọn idi ti o wọpọ, gẹgẹbi “gbogbo awọn idanwo 6 ni asopọ si olumulo idanwo pinpin kanna”.
Imọran: Ṣafikun “onini” ati “ọjọ atunyẹwo to kẹhin” si igbasilẹ iyasọtọ kọọkan. Iyasọtọ aibikita di idalẹnu ayeraye; Awọn idanwo brittle n gbe nibẹ lailai nitori ko si ẹnikan ti o bikita.
Padasẹyin nwon.Mirza tabili
Ipo
Ilana
Ipa ti AI
kekere atunse
Ipa agbegbe + idanwo ẹfin
Yan awọn idanwo ti o yẹ
titun ẹya-ara
Jẹmọ module + Integration
Ṣe imọran ọran ipadasẹhin tuntun kan
nla refactor
Full padasẹyin package
Iṣiro aafo agbegbe
iṣaaju-itusilẹ
Full package + àbẹwò
Ni ayo ati iye akoko
Amojuto ni ifiwe atunse
Idojukọ + ipa ọna pataki
Eto idanwo ailewu to kere julọ
Ailagbara kiakia / Alagbara kiakia
Alailagbara: "Idanwo yii ma kuna nigbakan, ṣe atunṣe."
Alagbara: "Igbeyewo yii kuna 3 ninu 10 nṣiṣẹ, koodu ko yipada. Ṣe ayẹwo idi ti aiṣedeede: le jẹ akoko / ije, iṣeduro aṣẹ, ipo ti o pin, igbẹkẹle ita, tabi iyatọ ayika. Fihan ila wo ni igbeyewo ojuami si idii ti o ṣeeṣe kọọkan. Daba ojutu ti o wa titi lailai; MAA ṢE daba awọn aami aisan-suppressing ojutu gẹgẹbi 'fikun idi ti ko le ṣe ayẹwo' . itọpa: [log]."
Imudani ti o lagbara; ṣe itọsọna iwadii aisan si idi gbòngbo ati pe o ṣe idiwọ didasilẹ aami aisan ni gbangba.
Mẹrin daakọ awọn awoṣe
1) Ayẹwo idanwo ẹlẹgẹ:
Koodu idanwo yii ma kọja nigba miiran ati nigba miiran kuna laisi iyipada. Ṣe atokọ awọn oludije idi root (ije, igbẹkẹle aṣẹ, ipinlẹ pinpin, igbẹkẹle ita, aago / ID, iyatọ ayika) ati ṣafihan laini ẹri ninu idanwo fun ọkọọkan. Daba ojutu titilai; samisi ojutu ipanilara gẹgẹbi tun gbiyanju bi ohun asegbeyin ati pẹlu idalare. Idanwo: [koodu] / Àpẹẹrẹ aisedeede: [iye igba ni iye awọn nṣiṣẹ]
2) Ni imọran ọran ipadasẹhin:
Iyipada ti o tẹle yii ni a ṣe: [apapọ iyipada/PR].Ṣakojọ awọn ihuwasi lọwọlọwọ ti iyipada yii yoo fọ ati dabaa ọran idanwo ipadasẹhin fun ọkọọkan. Ni pataki ṣe afihan awọn agbegbe ti awọn ipa ẹgbẹ ati awọn igbẹkẹle pinpin.
3) Mimo idanwo pidánpidán:
Ṣayẹwo jade awọn igbeyewo suite ni isalẹ. Ẹda ẹgbẹ tabi awọn ọran agbekọja ti o ṣe idanwo ihuwasi kanna; Daba awọn eyi ti MO yẹ ki o tọju ati awọn ti MO yẹ ki o darapọ fun ẹgbẹ kọọkan. Kilọ ti o ba jẹ eewu isonu ti agbegbe. Idanwo: [akojọ/koodu]
4) Aṣayan ipa idanwo:
Awọn faili/awọn iṣẹ wọnyi ti yipada: [akojọ]. Lati suite idanwo ti o wa tẹlẹ, yan ati ṣalaye awọn idanwo ti Mo nilo lati ṣiṣẹ ni akọkọ (awọn ti o sopọ taara / aiṣe-taara si koodu ti yipada). Akiyesi: leti mi pe Emi yoo tun ṣiṣẹ suite iṣaaju-itusilẹ ni kikun.
mẹta mini igba
Ọran 1 - Aṣiṣe gidi ti a bo nipasẹ Tun gbiyanju. Ẹgbẹ kan ṣafikun 3 igbiyanju si idanwo isanwo isanwo ti o ku lẹẹkọọkan; Idanwo naa nigbagbogbo “nkọja” ni bayi. Lilo “ayẹwo iwadii ẹlẹgẹ” rii pe aisedeede naa wa lati ipo ere-ije gidi kan: ni ẹru giga, ijẹrisi isanwo nigbakan ni ilọsiwaju ni ilopo. Fun awọn oṣu, Tun gbiyanju bo kokoro kan ti o le ja si ipadanu owo gidi laaye. Fa root ti o wa titi, tun gbiyanju kuro.
Ọran 2 - Package isunki, iyara pọ. Suite ifaseyin ti awọn idanwo 1,400 gba iṣẹju 55. Pẹlu “mimọ idanwo pidánpidán”, awọn idanwo 380 ti jade lati jẹ awọn ẹda-ẹda tabi bo; dapọ. Apoti naa dinku si awọn idanwo 900, akoko dinku si awọn iṣẹju 34, agbegbe naa ko dinku ni iwọnwọn. Awọn esi ti o yara ni iwuri fun ẹgbẹ lati ṣe idanwo nigbagbogbo.
Irú 3 - Bere fun gbára. Idanwo kan yoo ma kọja ni agbegbe nigbagbogbo, ṣugbọn yoo kuna laileto ni CI. Awọn iwadii AI fihan pe idanwo naa da lori olumulo ti a ṣẹda nipasẹ idanwo miiran, ni CI o fọ nitori awọn idanwo naa ṣiṣẹ ni afiwe / ilana ti o yatọ. A ṣe idanwo kọọkan lati ṣeto data tirẹ; Indecision jẹ lori.
Awọn aṣiṣe ti o wọpọ
- Fikun idanwo ẹlẹgẹ pẹlu atunwo. Gbiyanju lẹẹkansi lai nwa fun awọn root idi; ibora soke awọn ti gidi asise.
- "Di lẹẹkansi" asa. Ni deede aibikita awọn abajade pupa; Ni ọjọ kan, yiyọ aṣiṣe gidi.
- Ko pruning awọn package ni gbogbo. Gbigba awọn idanwo ẹda-iwe laaye lati ṣajọ ati fa fifalẹ package naa.
- Igbẹkẹle laarin awọn idanwo. Awọn idanwo da lori ipo ti o wọpọ / ọkọọkan; orisun aidaniloju.
- Idanwo nikan apakan ti o yipada ati fo ni kikun package. Ọna abuja iṣaaju-itusilẹ; Farasin ẹgbẹ ipa ona abayo.
- Gbẹkẹle igbẹkẹle ita. Awọn idanwo ti o da lori nẹtiwọki gangan / aago / iye ID; nipa ti riru.
Ni soki
Idanwo ipadasẹhin mu awọn iyipada fifọ awọn iṣẹ ṣiṣe iṣaaju; Ṣugbọn bi awọn idii ṣe n dagba, ilọra ati idanwo brittle npa igbẹkẹle run. Awọn idi gbongbo ti idanwo ẹlẹgẹ jẹ igbagbogbo akoko, igbẹkẹle aṣẹ, ipo pinpin, ati awọn igbẹkẹle ita. AI jẹ iranlọwọ ti o lagbara ni ayẹwo, mimọ ati yiyan idanwo; Ṣugbọn didasilẹ aiṣedeede pẹlu atunkọ ni wiwa awọn aṣiṣe gidi. Wa idi ti gbongbo, ṣe awọn idanwo ni ominira ati ipinnu, piruni package nigbagbogbo, ṣiṣe package ni kikun ṣaaju idasilẹ.
Ohun elo iṣẹ-ṣiṣe
Yan idanwo kan lati inu iṣẹ akanṣe tirẹ ti o mọ pe o jẹ ẹlẹgẹ (tabi dabi riru). Jade awọn oludije idi root ati rii daju awọn laini ẹri ninu idanwo pẹlu awoṣe “ayẹwo idanwo ẹlẹgẹ”. Ṣe idanimọ idi gbongbo ki o ṣe ojutu kan titi lai tun gbiyanju. Lẹhinna yan awọn idanwo mẹwa 10 lati inu package rẹ ki o wa awọn ti o le ni idapo pelu “ifọkuro idanwo ẹda-iwe.” Jabọ iye awọn iduroṣinṣin idanwo ti o yanju lati idi gbongbo wọn ati iye awọn ọran ti ko wulo ti o yọkuro lati inu suite naa.
akojọ ayẹwo
- [] Mo ti ṣe iwadii idi root ti idanwo ẹlẹgẹ; Emi ko dinku aami aisan naa.
- [ ] Mo ti ro Tun gbiyanju bi a lare kẹhin ohun asegbeyin ti, ko kan ni arowoto.
- [] Mo ṣe awọn idanwo ni ominira ati ipinnu (ya sọtọ lati awọn igbẹkẹle ita).
- [] Mo piruni àdáwòkọ/ kobojumu igbeyewo lati awọn padaseyin suite.
- [] Mo ti yan lati ṣe idanwo ti o da lori iyipada, ṣugbọn ṣiṣe idasilẹ ni kikun ni kikun.
- [] Mo ti mu gbogbo pupa isẹ, lodi si awọn "di lẹẹkansi, kọja" asa.