getting started with fitnesse collaboration tool
Zdaj se svet seli v okretnost. Zgodnje in neprekinjene povratne informacije so nujne za vsako ekipo scrum. Ker se svet spreminja, je treba spremeniti tudi miselnost preizkuševalcev.
Namesto da bi 'iskali napake, lomili programsko opremo, merili zahteve', preizkuševalci zdaj razmišljajo o 'zagotavljanju kakovosti, takoj, preskus brez uporabniškega vmesnika ali preizkus, še preden je uporabniški vmesnik na voljo'.
Zdaj se morajo preizkuševalci tudi odzivati na spremembe, zato je pomembno, da izstopite iz črne škatle in ne čakate, dokler se ne razvije uporabniški vmesnik; namesto tega začnite preizkušati tudi vmesne rezultate.
Kaj se boste naučili:
polja in funkcije c ++
- Ampak zakaj?
- Kaj je FitNesse?
- Zakaj naj uporabljam FitNesse?
- Torej, kaj vse lahko ustvarim?
- Prenos in konfiguriranje FitNesse:
- Primer FitNesse - Preskusne stvari:
- Pisanje testa v FitNesse:
- Nekaj vpogledov v sloge stalnic / tabel:
- Priporočilo:
- Zaključek
- Priporočeno branje
Ampak zakaj?
'ZDAJ JE TO ZELO AGILNA PERSPEKTIVA'.
Kadarkoli izdelamo programsko opremo, so najnižje ravni testov na ravni enote / komponente. Enotne teste izvaja razvojna skupina. Ti enotni preizkusi so v veliki meri usmerjeni v tehnologijo in so večinoma napisani v istem jeziku, skupaj s testnim sistemom.
Ti enotni testi so napisani z „ X enota ”Testno orodje. V svetu testiranja pravimo, da če je naš enotni test trden , napake so odkrite veliko prej in preskušanje nad enotno preskusno plastjo postane enostavno v stabilnem okolju. In ko se pogovarjamo v Agileju, rečemo, da če ekipa obvlada umetnost TDD (Test Driven Development), testi na ravni enote nudijo najhitrejše povratne informacije.
Plast nad plastjo enota / komponenta je plast preizkusa sprejemljivosti, ki se izvaja v podjetju. To so funkcionalni testi, ki imajo večjo pokritost kot enotni testi in jih najpogosteje izvajajo nerazvijalci. Ti preskusi preizkušajo plast za predstavitveno plastjo ali API-ji. Ti API-ji ali metode med preskušanjem omogočajo hitro povratno informacijo in do razvoja GUI-ja je večina funkcionalnosti preizkušena.
FitNesse je primer tega sloja samodejnih preizkusov sprejemljivosti.
Kaj je FitNesse?
FitNesse je 'Popolnoma integriran samostojni wiki in okvir za testiranje sprejemljivosti'. Je odprtokodni wiki spletni strežnik. Wiki - ker omogoča ustvarjanje lastnih spletnih strani, na katerih so ustvarjene testne tabele. Te testne tabele niso nič drugega kot podatki o preskusu .
Njegov namen je podpreti agilni slog sprejemanja in regresijskega testiranja črne škatle. Je tudi orodje za sodelovanje, ker preizkuševalci sodelujejo z razvijalci pri pripravi testne zbirke.
Zakaj naj uporabljam FitNesse?
Agile testna ekipa lahko s FitNesse pripravi testne obleke, ki bodo preizkušale metode v kodi. FitNesse je analogen Junit na način, da preizkuša tudi metode, vendar je drugačen kot Junit, ker so testi v obliki preprostih tabel, ki jih lahko uporabljajo tako razvijalci kot nerazvijalci.
Prednosti:
- Zgodnje povratne informacije z izvajanjem samodejnih sprejemnih preskusov tako pogosto, kot je potrebno.
- Rezultati preskusov so deterministični, ker so označeni z rdečo ali zeleno.
- Podatki o testih so lahko zasnovani tako, da ustrezajo potrebam po kakovosti.
- Preizkusi so napisani v preprostem jeziku in lahko razumljivi, saj so napisani v tabelarni obliki.
- Te tabele so opredeljene glede na vhodne in pričakovane izhodne vrednosti.
- Poglej vse Tu so funkcije FitNesse.
Torej, kaj vse lahko ustvarim?
V FitNesse lahko ustvarite teste in zbirko. Izrazi so zelo enaki kot v svetu testiranj. Preizkusi so enkraten in obleka je zbirka / skupina testov. Ko ustvarite obleko in jo izvedete, je prednost ta, da se izvedejo vsi testi v tej obleki. Torej potrebujete pravilno načrtovanje, da svoje teste uredite v obleki.
Prenos in konfiguriranje FitNesse:
=> Če želite prenesti FitNesse, Klikni tukaj
(Opomba: Kliknite na poljubno sliko za povečan pogled)
Prenesite najnovejšo različico fitnesse-standalone.jar in jo shranite na svoj lokalni pogon.
Odprite ukazni poziv in zaženite datoteko jar. Zaradi lažjega sem ustvaril paketno datoteko:
Ko se datoteka jar izvede, se FitNesse zažene, kot je prikazano spodaj: (kliknite sliko za povečavo)
Če želite odpreti FitNesse, odprite brskalnik in vnesite: http: // localhost: . V tem primeru je številka vrat 2222.
Prejeta stran je prikazana spodaj: (kliknite sliko za povečavo)
Torej, če lahko vidite spustni seznam testov, lahko ustvarimo 'stran Suite' in tudi 'testno stran'. Ko ustvarite zbirko, bodo izvedeni vsi testni skripti v tej zbirki.
Za razlago vzamem primer Testne strani.
Primer FitNesse - Preskusne stvari:
Od zdaj preizkušamo preprost program za računanje, prikazan spodaj.
Tu je koda v javi, ki ima 4 metode:
- dodatek ()
- minus ()
- pomnoži ()
- deli ()
(Prosimo, glejte, da FitNesse deluje s katerim koli jezikom po vaši izbiri. Za razlago sem uporabil javo)
Ta koda v svetu FitNesse se imenuje 'Fixture'.
Pripomočki niso nič drugega kot vzorčna koda - ali povezava med FitNesse in preizkušeno aplikacijo. Torej, kadar želimo preizkusiti metodo, moramo napisati vpenjalo, ki ga bo ta pripomoček sprožil in preizkusil metodo.
Koda 'Fixture' za naš primer je naslednja:
publicclass Calculator { privateint first,second; publicvoid setFirst(int first) { this.first=first; } publicvoid setSecond(int second) { this.second=second; } publicint addition() { return (first+second); } publicint minus() { return (first-second); } publicint multiply() { return (first*second); } publicfloatdivide() { return (first/second); } }
Koda v mrku je prikazana kot: (kliknite sliko za povečavo)
Datoteko razreda bi potrebovali, zato poskrbite, da jo sestavite.
Pisanje testa v FitNesse:
Korak 1) Vrnimo se k brskalniku, kjer imamo prvo stran FitNesse.
Na prvi strani kliknite »Testna stran«, vnesite ime testa in kliknite gumb »Shrani«. V našem primeru je to 'Kalkulator'
2. korak) V svoj URL dodajte ime testa s piko ».« Operater.
Všeč mi je: http: // localhost: 2222 / FrontPage.Calculator
3. korak) Kliknite gumb Uredi in vnesite spodnje vrstice
Tu so vnesene vrstice:
! opredelite TEST_SYSTEM {slim}
! pot F: Eclipse TestFitness bin
! | Kalkulator |
| prvi | drugi | seštevek? | minus? | pomnožimo? | delimo? |
| 4 | 2 | 6 | 2 | 8 | 2,0 |
| 10 | 5 | 15 | 5 | 50 | 2,0 |
| 10 | 10 | 20 | 0 | 100 | 1,0 |
Razumejmo vrstice eno za drugo.
do) V prvi vrstici piše FitNesse, da uporablja testni sistem SLIM.
( SLIM - Stoji za način priklica preprostega seznama. Če izgovorimo testni sistem SLIM, vse obdelave tabel opravi FitNesse. SLIM ima SLIM Runner in SLIM Executer. SLIM Runner razdeli preizkusne strani na preprosta navodila, ta navodila pa se posredujejo SLIM Executerju, ki usmerjevalno kodo pokliče sistem v preskusu)
b) Druga vrstica določa lokacijo datoteke razreda. V tem primeru se java koda prevede in datoteka razreda shrani na mesto “pot F: Eclipse TestFitness bin'
c) V tretji vrstici je navedeno ime razreda. V našem primeru jeKalkulator'
d) Zdaj sledi četrta vrstica:
Prva dva stolpca| prvi | drugi |so parametri ali vhodi v metodo java.
Naslednji 4 stolpci, ki jim sledi '?'seštevanje? | minus? | pomnoži? | deli? | so metode v razredu java. Te metode vrnejo vrednost, ki bi jo primerjali s pričakovanimi vrednostmi.
je) Vrstice:
| 4 | 2 | 6 | 2 | 8 | 2,0 |
| 10 | 5 | 15 | 5 | 50 | 2,0 |
| 10 | 10 | 20 | 0 | 100 | 1,0 |
So testni primeri ali naj rečem testni podatki za našo metodo.
Prva vrstica:
| prvi | drugi | seštevek? | minus? | pomnožimo? | delimo? |
| 4 | 2 | 6 | 2 | 8 | 2,0 |
Za prvi parameter bo vzel 4, za drugega pa 2 in bo v metodi dodajanja razreda java posredoval ti dve vrednosti. Metoda se bo izvedla in vrnila vrednost. Ta vrnjena vrednost se bo primerjala s pričakovano vrednostjo, zapisano pod 'add?' kateri je| 6 |
Podobno bo FitNesse prva dva parametra prenesla v minus? Metoda razreda java in vrne vrednost. Ta vrednost se bo primerjala s pričakovano vrednostjo glede na | 2 |
Na enak način pomnožite? in razdeliti? bo deloval tako, da bo vzel vrednosti prvega in drugega parametra in vrnil vrednost, s katero se primerja| 8 | 2,0 |oz
Na podoben način se izvedeta spodnji dve vrstici (ali naj rečem testni primeri).
| 10 | 5 | 15 | 5 | 50 | 2,0 |
| 10 | 10 | 20 | 0 | 100 | 1,0 |
4. korak) Ko uredite svoje teste, kliknite gumb za shranjevanje in vaša stran bo videti tako:
5. korak) Če želite zagnati teste, kliknite gumb Test in dobili bomo naslednji rezultat: (kliknite sliko za povečavo)
kako lahko odprem datoteko xml
V prvi vrstici (kar je naš prvi testni primer) zelena barva poudarja, da se vrednosti, vrnjene iz metode seštevanje (), minus (), množenje () in deljenje (), ujemajo s pričakovanim, tj. 6, 2 , 8 oziroma 2,0. Podobno se za drugo vrstico (to je drugi testni primer) ujemajo vse vrednosti, vrnjene iz metod.
6. korak) Zdaj, da dokažem, naj nekaj pričakovanih vrednosti spremenim v nekatere druge vrednosti (vrednosti so napačne, vendar sem to storil namenoma za razlago)
Od zdaj imam:
- Spremenjena pričakovana vrednost za dodatek () za prvi testni primer je 7
- Spremenjena pričakovana vrednost za minus () za drugi testni primer
- Spremenjena pričakovana vrednost za divide () za tretji testni primer.
7. korak) Zaženite test s klikom na gumb “Test”. Zgornji testi ne bi smeli uspeti. (kliknite sliko za povečavo)
Rdeča barva poudarja, da ti testi niso uspeli.
Nekaj vpogledov v sloge stalnic / tabel:
Videli smo, da se v FitNesse testi izvajajo z izvajanjem vrstic v tabeli. Zato bi morali za izvajanje različnih vrst testov (ali bi rekel, da preizkušamo različne vrste metod) uporabiti različne vrste tabel. Najpogosteje uporabljamo spodnje sloge Fixture / tabele:
- Vpenjanje stolpca - je najbolj razširjena (in je uporabljena v zgornjem primeru). Tu vrstice podatkov predstavljajo različne nabore vhodnih podatkov in pričakovane izhodne vrednosti.
- Vrstne napeljave - Uporablja se za testiranje poizvedb, ki vrnejo določen niz vrednosti.
- Akcijske napeljave - Uporablja se za izvajanje testov za zaporedje dogodkov. Ti dogodki so lahko kot klik na gumb, preverjanje vrednosti
Priporočilo:
Poskušal sem predstaviti koncepte, da bomo lahko začeli raziskovati več o FitNesse. Prav tako je treba spremeniti miselnost preizkuševalca in jo razširiti. Nehati se moramo omejevati, da pogledamo v kodo. Čutim; na koncu preizkušamo kodo, zakaj potem ne poskusimo kode videti in preizkusiti takrat in tam?
Začnite izostriti svoje spretnosti programiranja in bolj poudarjajte gradnjo logike in raje sintakso učenja. Ko boste dobro seznanjeni s programskimi koncepti in boste imeli prakso za njegovo izvajanje, bo raziskovanje FitNesse lažje.
Zaključek
Testiranje v okretnosti je na voljo v 4 okusih:
- Avtomatizirano testiranje enot - z uporabo Junita
- Test avtomatiziranega preverjanja sprejemljivosti - z uporabo FitNesse
- Avtomatizirani UI / regresijski testi - z uporabo selena ali QTP
- Ročno testiranje
Poskusiti bi morali potisniti maksimum našega testiranja v enoto in sprejemni sloj . Do zdaj smo poskušali obdržati večino naših testiranj za sloj uporabniškega vmesnika z orodji, kot sta QTP in Selenium, vendar je pomanjkljivost tu, da teh funkcij ni bilo mogoče preizkusiti, če uporabniški vmesnik ni razvit. Ko najdete napako, so razvijalci prešli na drug razvoj funkcij.
Po drugi strani pa, če lahko API-je preizkusimo kmalu potem, ko so bili napisani, lahko razvijalci to takoj popravijo. To bi povzročilo tudi manj napora, ko preizkusimo GUI. Ker so vse funkcionalnosti preizkušene, je testiranje grafičnega uporabniškega vmesnika enostavno.
Pri storitvi Agile je treba spremeniti tudi miselnost preizkuševalcev, ki morajo izstopiti iz svojega rutinskega sklopa testiranja, zdaj pa si oglejte kodo in poskusite prepoznati napake, tudi uporabniški vmesnik ni na voljo.
O avtorju: To je članek ekipe STH Shilpe C. Roy. V zadnjih 9+ letih dela na področju testiranja programske opreme na področjih, kot so internetno oglaševanje, investicijsko bančništvo in telekomunikacije.
Sporočite nam svoja vprašanja v komentarjih spodaj.
Priporočeno branje
- Razvijalci niso dobri preizkuševalci. Kaj praviš?
- Uporabno brezplačno orodje za zajem zaslona in opombe za preizkuševalce - qSnap Review
- 10 najbolj priljubljenih orodij za pregled kode za razvijalce in preizkuševalce
- Pregled WebLOAD - Uvod v orodje za testiranje obremenitve WebLOAD
- 15 najboljših orodij za testiranje SOA za preizkuševalce
- Kako ohraniti motivacijo pri preizkuševalcih programske opreme?
- Pregled orodja za upravljanje testov TestLodge
- Soft Skill for Testers: Kako izboljšati komunikacijsko spretnost