Istraživačka ispitivanja na agilnom

Istraživačko testiranje važna je aktivnost u agilnom okruženju, jer može pomoći ispitivačima softvera da prate brzi tempo razvoja agilnih softverskih projekata.

Prvo, kratki uvod o agilnoj metodologiji i istraživačkom testiranju:

U agilnoj metodologiji, softver se izdaje u malim verzijama. Svaka iteracija prolazi kroz planiranje, procjenu, razvoj, integraciju, testiranje i objavljivanje. Zbog čestih izdanja, automatizacija testa postaje sve važnija jer programeri trebaju brzo dobiti povratne informacije o statusu aplikacije. Automatske provjere služe kao regresijski testovi kako bi se osiguralo da sa svakim izdanjem softver nije nazadovao.

Istraživačko testiranje definira se kao simultano učenje, dizajn testa i izvršavanje testa. Pristup je ispitivanju kojim se ispitivač ocjenjuje kao sastavni dio postupka ispitivanja i dijeli iste vrijednosti kao i okretni manifest:

  • Pojedinci i interakcije nad procesima i alatima
  • Radni softver preko sveobuhvatne dokumentacije
  • Suradnja s kupcima preko pregovora o ugovoru
  • Reagiranje na promjene preko slijeđenja plana

Istraživačka ispitivanja također su komplementarna automatizaciji ispitivanja; to jest dok automatizirane provjere provjeravaju ima li problema s regresijom, Istraživačka ispitivanja usredotočuju se na nove značajke koje su razvijene. To je važno jer svaki sprint obično traje samo nekoliko tjedana, što ne omogućuje dovoljno vremena za skriptiranje testova i njihovo kasnije izvršavanje protiv aplikacije. S druge strane, istraživačko testiranje u agilnom okruženju omogućava testerima da se upoznaju s domenom i aplikacijom, a na svakoj iteraciji poboljšava se razumijevanje i stoga testeri postaju učinkovitiji.

Prema Brian Marick-ov ispitni kvadrant , dvije su strane testiranja, one koje podržavaju programiranje, tj. podržavaju pisanje koda (jedinični testovi) ili pružaju naznake kada bi programer mogao biti gotov (testovi prihvaćanja) i one koje kritiziraju proizvod, tj. „pogledajte gotov proizvod s namjerom otkrivanja nedostataka. ' Ovdje je, u području kritiziranja proizvoda, gdje istraživačka ispitivanja mogu igrati glavnu ulogu u agilnom projektu.



U agilnim projektima testove koji podržavaju programiranje uglavnom rade programeri i oni su gotovo uvijek automatizirani i pokazatelj su učinjenog s gledišta programera, dok istraživački testovi imaju za cilj pronaći moguće probleme koji su izvan automatskih testova programera. Istraživački testeri usredotočeni su na područja na kojima bi postojeći automatizirani testovi mogli biti kratki.

Učinkoviti istraživački testeri koji rade na agilnim projektima koriste taktike istraživačkog testiranja kako bi pomogli projektnom timu da obavijesti o mogućim problemima s proizvodom. Njihovo testiranje može biti nestrukturirano i slobodno ili se njima može upravljati pomoću povelja i ispitnih sesija. Također zbog kratkih intervala razvoja, ispitivanje se samo po sebi temelji na riziku, a istraživačka ispitivanja mogu se usredotočiti na područja s visokim rizikom kako bi se pronašli potencijalni problemi.

Agilne metodologije i istraživačka ispitivanja su besplatne metode koje, kada se koriste zajedno, mogu stvoriti izvrsnu sinergiju u iskustvu testiranja.