PyUseCase

Software screenshot:
PyUseCase
Podrobnosti Software:
Verze: 3.5.1
Datum uploadu: 11 May 15
Vývojka: Geoff Bache
Licence: Volný
Popularita: 8

Rating: nan/5 (Total Votes: 0)

PyUseCase je GUI testování software pro PyGTK.
Servisovatelný testování GUI s případu užití rekordér
Záznam záměr, spíše než mechaniky
Nejpřirozenější způsob, jak vytvořit testy přes uživatelské rozhraní je jednoduše provádět činnosti, které chcete provést, a mít nástroj, který může zaznamenat, a pak reprodukovat později. Jedná se o jednoduchý a rychlý způsob, jak vytvořit GUI testy a existuje mnoho nástrojů, které to.
Most nástroje pár testy pevně GUI
Problémy začít, když máte pár testů a změny GUI. Nahrávání může být skvělý způsob, jak vytvořit testy, ale je to hrozný způsob, jak udržet velké množství z nich. Je to náchylné k chybám, frustrující a časově velmi náročné, až budete mít několik testů. První generace nástrojů zaznamenaný pixel pozice a zlomil jakmile jste změnili rozlišení obrazovky. Dnešní nástroje dohoda, pokud jde o GUI mechaniky: najít tabulku s určitým jménem a klikněte na třetím sloupci čtvrté řady. Mohou přežít změny obrazovky a menší re-uspořádání grafického uživatelského rozhraní, ale nic jiného. Zaznamenané skripty jsou husté a nemají zprostředkovat účel testu, a jsou uzavřené kniha pro všechny non-technické lidé (a někdy i pro všechny, kromě autora nástroje).
Problém je v podstatě jedním z spojky. Zkoušky a grafického uživatelského rozhraní jsou pevně připojeny k sobě navzájem, a nelze pohodlně měnit nezávisle na sobě. Tento bod je vyroben dobře Robert C. Martin ve svém blogu zde a jeho závěr je, že testování GUI je neodmyslitelně křehký a vy byste měli dělat tak málo na to, jak se můžete dostat pryč s.
To se zdá poněkud poraženec ačkoli. Tam je obrovská hodnota, jelikož je schopen prokázat, jaké jsou vaše testy udělat, aby uživateli systému. Pokud testy obejít uživatelské rozhraní, pak tento proces vyžaduje značné množství technické dovednosti a hodně důvěry ze strany vašeho uživatele. A vůbec, vývojáři softwaru řešit problémy spojka po celou dobu. Odpověď je, jako obvykle, zavést další úrovně dereference.
Prolomit spojku s mapou UI
Obchodní lidé a uživatelé obvykle pracují v případů užití. Jedná se o popisy vysoké úrovni sekvence akcí v jazyce, kterému rozumí: tj že domény. Myšlenka "Use Case Recorder" je tedy nástrojem, který může nahrávat a přehrávat takové sekvence, a tím zachytit záměr uživatele. To pak umožní zvýšené porozumění, menší závislost na přesné podobě GUI a snadnější úpravu stávajících testů, aniž by se uchylovat k opětovným kliknutím všechna tlačítka.
Základním mechanismem je, že jsme udržovat mapování mezi akcemi, které mohou být v současné době prováděny s naším grafickým uživatelským rozhraním a prohlášení v tomto jazyce domény. Změny GUI pak znamenají, že tato jediná mapování je třeba aktualizovat, ale testy mohou zůstat nedotčené, pokračuje popsat, co je třeba udělat na koncepční úrovni. Toto mapování má formu externího souboru v PyUseCase 3.0 a nadcházející JUseCase 3.0, zatímco ve starších verzích má formu přístrojového vybavení v kódu aplikace.
Kontrola chování pomocí klád a TextTest
Takže naše use-case rekordér může nahrávat a přehrávat usecases pro nás. Ale jak můžeme zkontrolovat, že to, co vidíme na obrazovce, je správný? Většina GUI nástroje to udělat tím, že testovací skript, aby obsahoval "tvrzení", které vypadají nějaké widget, a zkontrolujte, že nějaký majetek z nich se rovná hardcoded hodnotu. To vytváří ještě větší závislost na aktuálním rozvržení grafického uživatelského rozhraní a nemůže být "zaznamenána" v žádném přirozeným způsobem, ale musí být naprogramován v po faktu. No "usecase" by samozřejmě obsahovat tuto informaci: v případě, že to udělal, by se obrátit na testovací skript.
Tato diskuse není na místě TextTest pro nic za nic. Pokud se nám podaří získat pouze naší aplikace produkovat záznam o tom, co GUI vypadá, můžeme zkontrolovat, co to dělá monitorováním obsah tohoto protokolu pomocí TextTest. PyUseCase 3.0 to udělá za vás: to generuje typu ASCII-art záznam aktuálního GUI vzhled a sleduje změny. Aplikace může doplnit vlastní těžby dřeva, pokud chce. U ostatních use-case rekordéry aplikace potřebuje vybudovat vlastní protokol pro tento účel v současné době.
Synchronizace testy podle kódu přístrojového
Téměř všechny testování GUI úsilí jsou sužován problémy s ujistěte se, že skript čeká dostatečně dlouhou dobu, než budete pokračovat, když se něco děje v pozadí. Řešení sahají od tajemných způsobech, jak čekat na nějaký widget mít určitý vzhled (ještě závislosti na GUI mechaniky) na "spánku" výroky liberálně roztroušené kolem. Které selhat při načtení systému a způsobit testy běžet mnohem pomaleji, než by jinak. Každý, kdo bez důvěrné znalosti kódu je špatně vybaven k řešení těchto problémů, ale přitom je zásadní součástí psaní testů.
Use-case rekordéry zavést koncept "událostí aplikací". To je v podstatě některé přístrojové vybavení v kódu, který indikuje na use-case rekordér, že se něco stalo, že je třeba čekal na, což umožňuje rekordéru pro záznam a přehrávání čeká, stejně jako kliknutí. Ty jsou popsány podrobněji zde.
Záznam makra, stejně jako testy
High-level, snadno manipulovat "usecases" jsou užitečné pro jiné věci, než testování. Jsou také velmi užitečné pro uživatele systému, kteří mohou vytvářet své vlastní makra pro sekvence akcí, které provádějí často.
Ty jsou známy jako "GUI zkratky" zde. Použijte-case rekordér se obvykle umožní aplikace požadovat "toolbar" od toho, který obsahuje ovládací prvky pro nahrávání a jejich přehrávání, které mohou být vloženy do aplikace GUI, jak je požadováno. Kromě toho umožňuje uživatelům vytvářet makra, mohou být také použity k vytvoření ještě vyšší úrovně abstrakce pro "test jazyka" výše popsaným, pomáhat testerů v provádění opakovaných opatření k dosažení určitého obrazovka pro testování. Ty jsou popsány podrobněji zde.
Více informací lze nalézt na domovské stránce projektu

Co je nového v této verzi:.

  • Velmi základní podpora pro wxPython bylo dodal.
  • Existuje také řada vylepšení a oprav pro PyGTK. Pozoruhodně, gtk.Dialog.run je nyní podporována bez nutnosti změn zdrojového kódu.
  • Python 2.6 a PyGTK 2.12 nebo novější jsou nyní zapotřebí.
  • Přístroje na bázi rozhraní dědictví byla odstraněna.

Požadavky na :

  • Python
  • PyGTK
  • TextTest

Podobný software

Sipbomber
Sipbomber

3 Jun 15

unittest_jshint
unittest_jshint

14 Apr 15

JUnit PDF Report
JUnit PDF Report

2 Jun 15

Ostatní software developer Geoff Bache

TextTest
TextTest

18 Jul 15

Komentáře k PyUseCase

Komentáře nebyl nalezen
Přidat komentář
Zapnout obrázky!