Testovací scénáře pro ALM Pumpy¶
Úspěšně otestováno
Popis: Scénář byl kompletně proveden a všechny kroky byly úspěšně dokončeny v souladu s očekávanými výsledky.
Vlastnosti:- Všechny testovací kroky proběhly bez chyb
- Skutečné výsledky plně odpovídají očekávaným výsledkům
- Nevyžaduje se žádná další akce
- Test může být považován za platný a úspěšný
Testováno neúspěšně
Popis: Scénář byl proveden, ale během testování byly zjištěny nesrovnalosti nebo chyby.
Vlastnosti:- Minimálně jeden testovací krok nesplnil očekávání
- Skutečné výsledky se liší od očekávaných
- Je vyžadována oprava a následné přetestování
- Může být přidán komentář s popisem nalezeného problému
Netestováno
Popis: Scénář zatím nebyl podroben testování nebo je testování plánováno na později.
Vlastnosti:- Testovací procedura ještě nebyla zahájena
- Je připraven k provedení, ale čeká na realizaci
- Po provedení bude přehodnocen na úspěšný/neúspěšný
1. Stažení projektu do DB bez inicializovaných dat (data.sql)
¶
Popis: Ověření chování aplikace při stahování projektu do prázdné databáze bez inicializovaných dat.
Kroky:- Vytvoří se prázdná databáze bez spuštění data.sql
- Spustí se proces stahování projektu
- Aplikace buď úspěšně inicializuje potřebné struktury, nebo vrátí srozumitelnou chybovou zprávu
Výsledek testu: netestováno
2. Opakované stažení projektu
¶
Popis: Ověření schopnosti aplikace znovu vytvořit data po smazání projektu.
Kroky:- Stáhne se projekt do DB
- Smaže se projekt z DB přes API
- Stáhne se stejný projekt znovu
- Data by se měla znovu vytvořit bez duplicit nebo chyb
Výsledek testu: netestováno
3. Stažení více projektů pro 1 ToolInstance
¶
Popis: Ověření správy více projektů pro jednu instanci nástroje.
Kroky:- Vyberou se 2+ různých projektů ze stejného ALM nástroje
- Spustí se proces stahování pro každý projekt
- Data všech projektů jsou uložena a přiřazena ke stejné ToolInstance
Výsledek testu: netestováno
4. Přiřazení autorů k WorkItemům
¶
Popis: Ověření kompletního přiřazení autorů ke všem položkám.
Kroky:- Stáhnou se projekty z různých ALM nástrojů
- Ověří se, že každý WorkItem má vyplněné author_id
- Žádný WorkItem nesmí mít prázdného autora
Výsledek testu: netestováno
5. Nevalidní vstupy v GUI
¶
Popis: Ověření ošetření nevalidních uživatelských vstupů do formuláře v GUI.
Kroky:- Zadají se postupně:
- Neexistující URL repozitáře
- Neplatný API klíč
- SQL injection (' OR 1=1 --)
- Speciální znaky (@#$%^&*)
- Překročení max. délky vstupních polí
- Aplikace by měla odmítnout nevalidní vstup a zobrazit uživatelsky přívětivou chybu
Výsledek testu: netestováno
6. Prázdný projekt
¶
Popis: Ověření stažení prázdného projektu (nový repozitář bez souborů).
Kroky:- Vytvoří se nový prázdný repozitář na GitHubu
- Pokusí se jej stáhnout přes ALM pumpu
- Aplikace by měla zpracovat prázdný stav (tj. neměla by spadnout)
Výsledek testu: netestováno
7. Integrita vztahů WorkItems
¶
Popis: Ověření správného uložení vztahů mezi položkami.
Kroky:- Stáhne se projekt obsahující vzájemně propojené issues (například parent-child vztahy v Jira nebo propojení přes odkazy v GitHub Issues)
- Zkontroluje se tabulka v databázi work_item_relation
- Vztahy mezi WorkItems jsou korektně uloženy v tabulce work_item_relation
- Pro každý vztah existuje záznam s korektně naplněnými poli leftItemId, rightItemId a relationId
- Bidirektivní vazby jsou zachovány (pokud existuje vztah A->B, pak musí existovat i B->A s příslušnou relací)
Výsledek testu: netestováno
8. Typy WorkItem
¶
Popis: Ověření správného mapování různých typů WorkItem.
Kroky:- Stáhne se projekt obsahující různé typy entit (Issues, Commits, Artifacts)
- Zkontrolují se záznamy v tabulce work_item
- Každý WorkItem má správně nastavený podle svého původu (COMMIT, ISSUE, ARTIFACT atd.) workItemType
- Všechny WorkItems mají správně nastavené pole podle zdrojového systému externalId
- Existuje korektní reference na autora v poli authorId
Výsledek testu: netestováno
9. Historie změn
¶
Popis: Ověření zachování historie změn WorkItems.
Kroky:- Stáhne se projekt s issue, které prošlo několika změnami stavu
- Zkontroluje se struktura tabulek field_change a work_item_change
- Pro každou změnu existuje záznam v tabulce work_item_change
- Pole v name správně indikuje typ změny (ADD, MODIFY, COMMENT) work_item_change
- V tabulce field_change jsou uloženy konkrétní změny polí s hodnotami před a po změně
Výsledek testu: netestováno
10. Kategorie a Labels
¶
Popis: Ověření mapování kategorii a labelů.
Kroky:- Stáhne se GitHub projekt s dobře označkovanými issues
- Zkontrolují se záznamy v tabulce work_unit a vazební tabulce mezi work_unit a category
- Všechny GitHub Labels jsou uloženy jako entity Category
- Vazby mezi WorkUnits a kategoriemi jsou korektně uloženy v propojovací tabulce
- Kategorie mají správný odkaz na projectInstance
Výsledek testu: netestováno
11. Konfigurace commitů
¶
Popis: Ověření správy Configuration a CommittedConfiguration.
Kroky:- Stáhne se Git projekt s několika commity
- Zkontroluj záznamy a vazby v tabulkách committed_configuration, configuration a commit
- Každý WorkItem typu COMMIT má přiřazenou konfiguraci
- V tabulce committed_configuration existuje záznam pro každý commit
- Tabulka obsahuje správné reference na branch, committed_configuration a commit
Výsledek testu: netestováno
12. Větve a commity
¶
Popis: Test na propojení mezi commit a branches.
Kroky:- Stáhne se Git repozitář s více větvemi obsahujícími stejné commity
- Zkontrolují se tabulky a vazební tabulka mezi branch a commit
- Pro každou branch v repozitáři existuje záznam v tabulce branch
- V propojovací tabulce mezi commit a branch je správně zaznamenáno, které commity patří do jakých větví
- Commit patřící do více větví má správný počet záznamů ve vazební tabulce
Výsledek testu: netestováno
13. Vazby instancí
¶
Popis: Test na vazby ToolInstance a ProjectInstance
Kroky:- Nakonfiguruje se více projektů na stejné instanci nástroje (např. více repozitářů na jednom GitHub účtu)
- Zkontrolují se záznamy v tabulkách tool_instance a project_instance
- V tabulce tool_instance existuje pouze jeden záznam pro jednu instanci nástroje
- Každý project má vlastní záznam v project_instance
- Všechny ProjectInstance odkazují na správnou ToolInstance
Výsledek testu: netestováno
14. Klasifikační tabulky
¶
Popis: Ověření mapování priorit, statusů a další klasifikačních tabulek.
Kroky:- Stáhnou se projekty z různých ALM nástrojů s různými prioritami a statusy
- Zkontrolují se záznamy v tabulkách wu_type, priority, status, severity a resolution
- Každá entita má správně nastavené pole class podle mapování z ALM nástroje
- Každá entita je správně přiřazena k příslušné project_instance
- Entity se stejným významem z různých nástrojů jsou mapovány na stejnou klasifikaci
Výsledek testu: netestováno
15. Správa osob a rolí
¶
Popis: Test na persistenci Person a jejich vazeb
Kroky:- Stáhne se projekt, kde stejná osoba vystupuje v různých rolích (autor, assignee, committer)
- Zkontrolují se tabulky person a person_role
- V tabulce existuje pouze jeden záznam pro jednu osobu person
- V tabulce person_role jsou správně zaznamenány různé role osoby
- Osoby se stejným jménem ale různými identifikátory jsou správně rozlišeny
Výsledek testu: netestováno
Autor: Jakub Homolka
Datum: 24.4.2025
Stav: hotový
Aktualizováno uživatelem Štěpán Faragula před 1 den · 38 revizí