IcuTest - IcuTest - Wikipedia
![]() | Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto problémech na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Vývojáři | NXS-7 Software Inc. |
---|---|
Stabilní uvolnění | 1.0.7 / 11. května 2010 |
Operační systém | Microsoft Windows |
Typ | Automatizace testů, testování jednotky |
Licence | Proprietární |
webová stránka | www |
IcuTest je testování jednotky rámec pro GUI. Aktuální verze podporuje Windows Presentation Foundation aplikace. Ověření grafického uživatelského rozhraní se provádí především pomocí porovnání obrázků. Testovací sady mohou běžet interaktivně nebo plně automatizovaně.
Filozofie
IcuTest není systém záznamu a přehrávání. Takové systémy mohou vytvářet testovací skripty, které se obtížně udržují.[1][2] IcuTest se spíše domnívá, že nejúčinnějším místem pro testování je test jednotky. Proto se IcuTest vzdává jakéhokoli záznamového mechanismu a stejně jako typické testy jednotek se spoléhá na programátor, že definuje rozsah a parametry testu.
Používání
Typický IcuTest poskytuje přímou kontrolu nad testovanou aplikací. Zde je příklad, který zajišťuje správnost ViewModel.
[Testovací metoda] veřejnost prázdnota TestMyWindow_WithDataContext() { JIP.Vyvolat(() => { var w = Nový MyWindow(); w.Ukázat(); JIP.CheckView(w, „MyWindowTest“); w.DataContext = Nový MyViewModel(); JIP.CheckView(w, „MyWindowTest_with_ViewModel“); w.Zavřít(); }); }
ICU.CheckView je hlavním testovacím (nebo prosazujícím) mechanismem v IcuTestu. Provádí rychlé porovnání bitmap mezi aktuálním snímkem uživatelského rozhraní a dříve uloženým snímkem. Stejně jako Assert, CheckView vyvolá výjimku, když test selže.
IcuTest nabízí nástroje vyšší úrovně, které jsou speciálně navrženy tak, aby usnadnily testování grafického uživatelského rozhraní. Zde je příklad, který ilustruje:
- Scénáře IcuTest
- Kódovaná automatizace uživatelského rozhraní
- BDD (Vývoj založený na chování ) Podpěra, podpora
- GWT (Vzhledem k tomu, kdy, pak ) a AAA (uspořádat, jednat, tvrdit) plynulost
[Testovací metoda] veřejnost prázdnota cannot_login_with_invalid_password() { var kontext = Nový WindowScenario<ExampleLoginWindow>(); JIP.Dáno(kontext) // Volitelné specifikace BDD .Jako(„Uživatel MyApp“) .Chci(„přihlašovací okno“) .Aby(„Mám zabezpečený přístup k datům MyApp“) .Když(() => { // nastavení nesprávného hesla pomocí automatizace GUI set_login(kontext.Okno, "moje jméno", "špatné heslo"); }) .Pak(() => { // okno by mělo zobrazovat zprávu „neplatné přihlášení“ JIP.CheckView(kontext.Okno, „login_with_invalid_pass“); }) .Test(); } prázdnota set_login(ExampleLoginWindow w, tětiva uživatel, tětiva složit) { var userBox = guiHelper.Nalézt<Textové pole>(w, "userBox"); var passBox = guiHelper.Nalézt<PasswordBox>(w, "passwordBox"); var loginBtn = guiHelper.Nalézt<Knoflík>(w, „Přihlašovací tlačítko“); userBox.Text = uživatel; passBox.Heslo = složit; guiHelper.Klepněte na(loginBtn); }
Funkce
S IcuTest můžete:
- Vytvářejte jednoduché, udržovatelné testy GUI
- Zajistěte spolehlivé a funkční aplikace
- Podpora osvědčených postupů TDD a BDD
- Použít s MSTest, NUnit, XUnit, MbUnit atd.
- Najděte chyby rychle a automaticky
- Produkujte lepší pokrytí kódu
- Podporujte sebevědomý refaktoring
- Zmírněte ruční testování a ladění