getting started with fitnesse collaboration tool
Nyní se svět mění na Agile. Včasná a nepřetržitá zpětná vazba je pro každý scrum tým imperiální. Protože se svět mění, je také třeba změnit myšlení testerů.
Namísto „hledání chyb, rozbití softwaru, měření požadavků“ nyní testeři uvažují o „poskytování kvality hned na první chvíli, testování bez uživatelského rozhraní nebo testování ještě předtím, než je uživatelské rozhraní k dispozici“.
Od testerů se nyní také požaduje, aby reagovali na změny, a proto je důležité vyjít z techniky testování černé skříňky a nečekat, až bude vyvinuto uživatelské rozhraní; místo toho začněte také testovat průběžně dodávané produkty.
Co se naučíte:
program binárního stromu vyhledávání v Javě
- Ale proč?
- Co je FitNesse?
- Proč bych měl používat FitNesse?
- Co vše tedy mohu vytvořit?
- Stahování a konfigurace FitNesse:
- Příklad FitNesse - věci k testování:
- Psaní testu ve FitNesse:
- Některé poznatky o stylech svítidel / stolů:
- Doporučení:
- Závěr
- Doporučené čtení
Ale proč?
„TEĎ JE TO VELMI AGILNÍ PERSPEKTIVA“.
Kdykoli vytváříme software, nejnižší úrovně testů se udržují na úrovni jednotky / komponenty. Testy jednotek provádí vývojový tým. Tyto jednotkové testy jsou velmi technologicky zaměřené a většinou jsou psány ve stejném jazyce, ve kterém je napsán testovaný systém.
Tyto jednotkové testy jsou psány s „ X jednotka ”Testovací nástroj. Říkáme to v testovacím světě pokud je náš jednotkový test pevný , defekty jsou identifikovány mnohem dříve a testování nad jednotkovou testovací vrstvou je ve stabilním prostředí snadné. A když mluvíme v Agile, říkáme, že pokud tým zvládne umění TDD (Test Driven Development), testy na úrovni jednotky poskytují nejrychlejší zpětnou vazbu.
Vrstva nad jednotkovou / komponentní vrstvou je vrstva Akceptační testy, která provádí obchod. Jedná se o funkční testy, které mají větší pokrytí než testy jednotek a jsou nejčastěji prováděny vývojáři. Tyto testy testují vrstvu za prezentační vrstvou nebo API. Tyto API nebo metody při testování poskytují rychlou zpětnou vazbu a v době vývoje grafického uživatelského rozhraní je testována většina funkcí.
FitNesse je příkladem této vrstvy automatických přejímacích testů.
Co je FitNesse?
FitNesse je „plně integrovaný samostatný wiki a rámec pro přejímací testování“. Jedná se o otevřený zdroj, wiki webový server. Wiki - protože umožňuje vytvářet vlastní webové stránky, na kterých se vytvářejí testovací tabulky. Tyto testovací tabulky nejsou nic jiného než testovací data .
Jejím záměrem je podpora agilního stylu akceptace a regresního testování černé skříňky. Je to také nástroj pro spolupráci, protože testeři spolupracují s vývojáři na přípravě testovací sady.
Proč bych měl používat FitNesse?
Agilní testovací tým může pomocí FitNesse připravit testovací obleky, které otestují metody v kódu. FitNesse je obdobou Junit způsobem, který také testuje metody, ale je to jiné než Junit, protože testy jsou ve formě jednoduchých tabulek, které mohou používat jak vývojáři, tak i vývojáři.
Výhody:
- Včasná zpětná vazba prováděním automatizovaných akceptačních testů tak často, jak je požadováno.
- Výsledky testů jsou deterministické, protože jsou zvýrazněny červeně nebo zeleně.
- Testovací data mohou být navržena tak, aby vyhovovala potřebám kvality.
- Testy jsou psány jednoduchým jazykem a jsou snadno srozumitelné, protože jsou psány v tabulkové formě.
- Tyto tabulky jsou definovány z hlediska vstupu a očekávaných výstupů.
- Vidět vše Funkce FitNesse zde.
Co vše tedy mohu vytvořit?
Ve FitNesse můžete vytvářet Testy a Suite. Termíny jsou velmi podobné těm, které se používají v testovacím světě. Testy jsou jednotlivé skripty a oblek je soubor / skupina testů. Když vytvoříte oblek a provedete jej, výhodou je, že jsou provedeny všechny testy v tomto obleku. Abyste mohli testy uspořádat v obleku, musíte řádně naplánovat.
Stahování a konfigurace FitNesse:
=> Chcete-li stáhnout FitNesse, Klikněte zde
(Poznámka: Klikněte na libovolný obrázek pro zvětšené zobrazení)
Stáhněte si nejnovější verzi souboru fitnesse-standalone.jar a uložte ji na místní disk.
Otevřete příkazový řádek a spusťte soubor jar. Pro usnadnění jsem vytvořil dávkový soubor:
Jakmile je soubor jar spuštěn, spustí se FitNesse, jak je znázorněno níže: (pro zvětšení klikněte na obrázek)
Chcete-li otevřít FitNesse, otevřete prohlížeč a zadejte: http: // localhost: . V tomto případě je číslo portu 2222.
Stránka přijata je uvedena níže: (pro zvětšení klikněte na obrázek)
Pokud zde tedy vidíte rozevírací nabídku Testy, můžeme vytvořit „stránku sady“ i „testovací stránku“. Když vytvoříte sadu, budou provedeny všechny testovací skripty v této sadě.
Pro účely vysvětlení si vezmu příklad Testovací stránky.
Příklad FitNesse - věci k testování:
Nyní testujeme jednoduchý program kalkulačky zobrazený níže.
Zde je kód v jazyce Java, který má 4 metody:
- přidání ()
- mínus ()
- znásobit ()
- rozdělit ()
(Přečtěte si prosím, že FitNesse pracuje s jakýmkoli jazykem podle vašeho výběru. Pro vysvětlení jsem použil java)
Tento kód ve světě FitNesse se nazývá „Fixture“.
Svítidla nejsou nic jiného než ukázkový kód - nebo spojení mezi FitNesse a testovanou aplikací. Takže kdykoli chceme testovat metodu, musíme napsat svítidlo a toto svítidlo vyvolá a otestuje metodu.
Kód „Fixture“ pro náš příklad je tedy následující:
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); } }
Kód v zatmění je zobrazen jako: (pro zvětšení klikněte na obrázek)
Potřebovali bychom soubor třídy, takže se ujistěte, že jste jej zkompilovali.
Psaní testu ve FitNesse:
Krok 1) Vraťme se zpět do prohlížeče, kde máme přední stránku FitNesse.
Na přední stránce klikněte na „Testovací stránka“, zadejte název testu a klikněte na tlačítko „Uložit“. V našem případě je to „Kalkulačka“
Krok 2) V adrese URL připojte název testu s tečkou „.“ Operátor.
Jako: http: // localhost: 2222 / FrontPage.Calculator
Krok č. 3) Klikněte na tlačítko Upravit a zadejte řádky zobrazené níže
Zde jsou zadané řádky:
! definovat TEST_SYSTEM {slim}
! path F: Eclipse TestFitness bin
! | Kalkulačka |
| první | druhý | sčítání? | mínus? | násobení? | dělení? |
| 4 | 2 | 6 | 2 | 8 | 2.0 |
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
Pochopme řádky jeden po druhém.
na) První řádek říká, že FitNesse používá testovací systém SLIM.
( ŠTÍHLÝ - Zkratky pro metodu vyvolání jednoduchého seznamu. Řekněme SLIM testovací systém, veškeré zpracování tabulky provádí FitNesse. SLIM má SLIM Runner a SLIM Executer. SLIM Runner rozděluje testovací stránky na jednoduché pokyny a tyto pokyny jsou předány SLIM Executeru, který směruje kód zařízení tak, aby zavolal testovaný systém)
b) Druhý řádek definuje umístění souboru třídy. V tomto případě se zkompiluje java kód a soubor třídy se uloží na místo “cesta F: Eclipse TestFitness bin'
C) Třetí řádek uvádí název třídy. V našem případě je to „Kalkulačka'
d) Nyní přichází čtvrtý řádek:
První dva sloupce| první | druhý |jsou parametry nebo vstupy do metody Java.
Další 4 sloupce, za kterými následuje „?“sčítání? | mínus? | násobení? | dělení? | jsou metody ve třídě Java. Tyto metody vrátí hodnotu, která by byla porovnána s očekávanými hodnotami.
je) Čáry:
| 4 | 2 | 6 | 2 | 8 | 2.0 |
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
Jsou testovací případy nebo bych měl říct Test data pro naši metodu.
První řádek:
| první | druhý | sčítání? | mínus? | násobení? | dělení? |
| 4 | 2 | 6 | 2 | 8 | 2.0 |
Vezme 4 jako první parametr a 2 jako druhý parametr a předá tyto dvě hodnoty v metodě přidání třídy java. Metoda se provede a vrátí hodnotu. Tato vrácená hodnota bude porovnána s očekávanou hodnotou zapsanou pod „sčítání?“ který je| 6 |
Podobným způsobem předá FitNesse první 2 parametry v minusu? Metoda třídy Java a vrací hodnotu. Tato hodnota bude porovnána s očekávanou hodnotou proti | 2 |
Stejným způsobem, znásobit? a rozdělit? bude fungovat tak, že vezme hodnoty prvního a druhého parametru a vrátí hodnotu, která je porovnána s| 8 | 2.0 |resp
Podobným způsobem jsou provedeny 2 níže uvedené řádky (nebo bych měl říct testovací případy).
| 10 | 5 | 15 | 5 | 50 | 2.0 |
| 10 | 10 | 20 | 0 | 100 | 1.0 |
vytvořit kopii pole
Krok č. 4) Po úpravě testů klikněte na tlačítko Uložit a vaše stránka bude vypadat takto:
Krok č. 5) Chcete-li spustit testy, klikněte na tlačítko Test a výsledek získáme následovně: (pro zvětšení klikněte na obrázek)
U prvního řádku (což je náš první testovací případ) zelená barva zdůrazňuje, že hodnoty vrácené z metody add (), minus (), multiply () a divide () se shodují s tím, co se očekává, tj. 6, 2 , 8, respektive 2,0. Podobně pro druhý řádek (což je druhý testovací případ) se všechny hodnoty vrácené z metod shodují.
Krok č. 6) Nyní, abych předvedl, dovolte mi změnit několik očekávaných hodnot na jiné hodnoty (hodnoty jsou nesprávné, ale vysvětlil jsem to záměrně)
Od této chvíle mám:
- Změněna očekávaná hodnota pro add () pro první testovací případ na 7
- Změněna očekávaná hodnota pro mínus () pro druhý testovací případ
- Změněna očekávaná hodnota pro divide () pro třetí testovací případ.
Krok č. 7) Spusťte test kliknutím na tlačítko „Test“. Výše uvedené testy by měly selhat. (pro zvětšení klikněte na obrázek)
Červená barva zdůrazňuje, že tyto testy selhaly.
Některé poznatky o stylech svítidel / stolů:
Viděli jsme, že ve FitNesse se testy provádějí prováděním řádků v tabulce. Proto abychom mohli provádět různé druhy testů (nebo bych měl říci, že testuji různé druhy metod), museli bychom používat různé druhy tabulek. Nejčastěji používáme níže uvedené styly svítidel / stolů:
- Sloupcový přípravek - je nejrozšířenější (a používá se ve výše uvedeném příkladu). Zde řádky dat představují různé sady vstupu a jeho očekávaného výstupu.
- Řádkové svítidla - Používá se pro testování dotazů, které vrací určitou sadu hodnot.
- Akční svítidla - Používá se ke spouštění testů sledu událostí. Tyto události mohou být jako kliknutí na tlačítko a kontrola hodnot
Doporučení:
Snažil jsem se demonstrovat koncepty, abychom mohli začít zkoumat více na FitNesse. Je také třeba změnit myšlení testera a je třeba ho rozšířit. Musíme se přestat omezovat, abychom se podívali dovnitř kódu. Cítím; nakonec testujeme kód, tak proč se nepokusíme kód vidět a testovat sem a tam?
Začněte zostřit své programátorské dovednosti a důraz více na budování logiky a spíše na učení syntaxe. Jakmile se dobře zorientujete v programovacích konceptech a budete mít zkušenosti s jeho implementací, bude zkoumání FitNesse snazší.
Závěr
Agilní testování má 4 příchutě:
- Automatizované testování jednotek - pomocí Junit
- Automatizovaný test ověření přijetí - pomocí aplikace FitNesse
- Automatizované uživatelské rozhraní / regresní testy - pomocí selenu nebo QTP
- Ruční testování
Měli bychom se pokusit prosadit maximum našeho testování v jednotce a akceptační vrstvě . Doposud se snažíme udržet většinu našich testů pro vrstvu uživatelského rozhraní pomocí nástrojů jako QTP a Selenium, ale nevýhodou je, že tyto funkce nelze testovat, dokud nebude vyvinuto uživatelské rozhraní. V době, kdy najdete závadu, se vývojáři přesunuli do vývoje některých dalších funkcí.
Na druhou stranu, pokud můžeme otestovat API brzy po napsání, vývojáři to mohou okamžitě opravit. To by také mělo za následek menší úsilí při testování grafického uživatelského rozhraní. Protože jsou testovány všechny funkce, je testování grafického uživatelského rozhraní snadné.
S Agile potřebuje myšlení testerů také změnu a musí vyjít ze své rutinní sady testování a nyní byste se měli podívat na kód a pokusit se identifikovat vady, i když uživatelské rozhraní není k dispozici.
O autorovi: Toto je hostující článek člena týmu STH Shilpy C. Royové. Posledních 9 a více let pracuje v oblasti testování softwaru v doménách, jako je internetová reklama, investiční bankovnictví a telekomunikace.
Sdělte nám své dotazy v komentářích níže.
Doporučené čtení
- Vývojáři nejsou dobří testeři. Co říkáš?
- Užitečný bezplatný nástroj pro snímání obrazovky a poznámky pro testery - qSnap Review
- Top 10 nejpopulárnějších nástrojů pro kontrolu kódu pro vývojáře a testery
- Recenze WebLOAD - Začínáme s nástrojem pro testování zatížení WebLOAD
- Top 15 nástrojů pro testování SOA pro testery
- Jak udržet živou motivaci v testerech softwaru?
- Recenze nástroje TestLodge Test Management
- Soft Skill for Testers: Jak zlepšit komunikační dovednosti