Projekt

Obecné

Profil

Testovaci scenare » Historie » Verze 34

Jakub Homolka, 2025-04-24 11:48

1 3 Jakub Homolka
2
h1. Testovací scénáře pro ALM Pumpy
3
4 26 Jakub Homolka
----
5
6 19 Jakub Homolka
!check_mark.png! *Úspěšně otestováno* 
7
8
*Popis:* Scénář byl kompletně proveden a všechny kroky byly úspěšně dokončeny v souladu s očekávanými výsledky.
9 1 Štěpán Faragula
10 21 Jakub Homolka
*Vlastnosti:*
11
12 20 Jakub Homolka
* Všechny testovací kroky proběhly bez chyb
13
* Skutečné výsledky plně odpovídají očekávaným výsledkům
14 1 Štěpán Faragula
* Nevyžaduje se žádná další akce
15 21 Jakub Homolka
* Test může být považován za platný a úspěšný
16 1 Štěpán Faragula
17 28 Jakub Homolka
!exclamation_mark.jpg! *Testováno neúspěšně*
18 21 Jakub Homolka
19
*Popis:* Scénář byl proveden, ale během testování byly zjištěny nesrovnalosti nebo chyby.
20 22 Jakub Homolka
21 21 Jakub Homolka
*Vlastnosti:*
22
23
* Minimálně jeden testovací krok nesplnil očekávání
24
* Skutečné výsledky se liší od očekávaných
25
* Je vyžadována oprava a následné přetestování
26
* Může být přidán komentář s popisem nalezeného problému
27
28 28 Jakub Homolka
!red_cross.jpg! *Netestováno*
29 22 Jakub Homolka
30
*Popis:* Scénář zatím nebyl podroben testování nebo je testování plánováno na později.
31
32
*Vlastnosti:*
33
34
* Testovací procedura ještě nebyla zahájena
35
* Je připraven k provedení, ale čeká na realizaci
36
* Po provedení bude přehodnocen na úspěšný/neúspěšný
37 26 Jakub Homolka
38
----
39 13 Jakub Homolka
40 34 Jakub Homolka
h3. 1. Stažení projektu do DB bez inicializovaných dat (_data.sql_) !red_cross.jpg! 
41 4 Jakub Homolka
42 6 Jakub Homolka
*Popis:* Ověření chování aplikace při stahování projektu do prázdné databáze bez inicializovaných dat.
43
44 3 Jakub Homolka
**Kroky:**
45 7 Jakub Homolka
1. Vytvoří se prázdná databáze bez spuštění `data.sql`
46
2. Spustí se proces stahování projektu
47 1 Štěpán Faragula
48
**Očekávaný výsledek:**
49 7 Jakub Homolka
- Aplikace buď úspěšně inicializuje potřebné struktury, nebo vrátí srozumitelnou chybovou zprávu
50
51
*Výsledek testu:* netestováno
52 3 Jakub Homolka
53 31 Jakub Homolka
h3. 2. Opakované stažení projektu !red_cross.jpg!
54 1 Štěpán Faragula
55 31 Jakub Homolka
*Popis:* Ověření schopnosti aplikace znovu vytvořit data po smazání projektu.
56
57 3 Jakub Homolka
**Kroky:**
58 31 Jakub Homolka
1. Stáhne se projekt do DB
59
2. Smaže se projekt z DB přes API
60
3. Stáhne se stejný projekt znovu
61 3 Jakub Homolka
62
**Očekávaný výsledek:**
63
- Data by se měla znovu vytvořit bez duplicit nebo chyb
64 27 Jakub Homolka
65 1 Štěpán Faragula
*Výsledek testu:* netestováno
66
67
h3. 3. Stažení více projektů pro 1 ToolInstance !red_cross.jpg!
68 3 Jakub Homolka
69 31 Jakub Homolka
*Popis:* Ověření správy více projektů pro jednu instanci nástroje.
70
71 3 Jakub Homolka
**Kroky:**
72 31 Jakub Homolka
1. Vyberou se 2+ různých projektů ze stejného ALM nástroje
73
2. Spustí se proces stahování pro každý projekt
74 1 Štěpán Faragula
75
**Očekávaný výsledek:**
76 31 Jakub Homolka
- Data všech projektů jsou uložena a přiřazena ke stejné ToolInstance
77 8 Jakub Homolka
78
*Výsledek testu:* netestováno
79 3 Jakub Homolka
80 31 Jakub Homolka
h3. 4. Přiřazení autorů k WorkItemům !red_cross.jpg!
81
82
*Popis:* Ověření kompletního přiřazení autorů ke všem položkám.
83 1 Štěpán Faragula
 
84
**Kroky:**
85 31 Jakub Homolka
1. Stáhnou se projekty z různých ALM nástrojů
86
2. Ověří se, že každý `WorkItem` má vyplněné `author_id`
87 1 Štěpán Faragula
88 27 Jakub Homolka
**Očekávaný výsledek:**
89 4 Jakub Homolka
- Žádný `WorkItem` nesmí mít prázdného autora
90 3 Jakub Homolka
91
*Výsledek testu:* netestováno
92
93 31 Jakub Homolka
h3. 5. Nevalidní vstupy v GUI !red_cross.jpg!
94 3 Jakub Homolka
95 31 Jakub Homolka
*Popis:* Ověření ošetření nevalidních uživatelských vstupů do formuláře v GUI.
96
97 1 Štěpán Faragula
**Kroky:**
98 31 Jakub Homolka
1. Zadají se postupně:
99
* 1.1 Neexistující URL repozitáře
100
* 1.2 Neplatný API klíč
101
* 1.3 SQL injection (' OR 1=1 --)
102
* 1.4 Speciální znaky (@#$%^&*)
103
* 1.5 Překročení max. délky vstupních polí
104 8 Jakub Homolka
105
**Očekávaný výsledek:**
106 27 Jakub Homolka
- Aplikace by měla odmítnout nevalidní vstup a zobrazit uživatelsky přívětivou chybu
107 5 Jakub Homolka
108 1 Štěpán Faragula
*Výsledek testu:* netestováno
109 3 Jakub Homolka
110 31 Jakub Homolka
h3. 6. Prázdný projekt !red_cross.jpg!
111 3 Jakub Homolka
112 31 Jakub Homolka
*Popis:* Ověření stažení prázdného projektu (nový repo bez souborů).
113
114 3 Jakub Homolka
**Kroky:**
115 31 Jakub Homolka
1. Vytvoří se nový prázdný repozitář na GitHubu
116
2. Pokusí se jej stáhnout přes ALM pumpu
117 27 Jakub Homolka
118 4 Jakub Homolka
**Očekávaný výsledek:**
119 3 Jakub Homolka
- Aplikace by měla zpracovat prázdný stav (tj. neměla by spadnout)
120 1 Štěpán Faragula
121 3 Jakub Homolka
*Výsledek testu:* netestováno
122
123 32 Jakub Homolka
h3. 7. Integrita vztahů Work Items !red_cross.jpg!
124 1 Štěpán Faragula
125 32 Jakub Homolka
*Popis:* Ověření správného uložení vztahů mezi položkami.
126
127 3 Jakub Homolka
**Kroky:**
128 32 Jakub Homolka
1. 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)
129
2. Zkontroluje se tabulka v databázi `work_item_relation`
130 8 Jakub Homolka
131 27 Jakub Homolka
**Očekávaný výsledek:**
132 3 Jakub Homolka
- Vztahy mezi Work Items jsou korektně uloženy v tabulce `work_item_relation`
133
- Pro každý vztah existuje záznam s korektně naplněnými poli `leftItemId`, `rightItemId` a `relationId`
134 1 Štěpán Faragula
- Bidirektivní vazby jsou zachovány (pokud existuje vztah A->B, pak musí existovat i B->A s příslušnou relací)
135 3 Jakub Homolka
136 1 Štěpán Faragula
*Výsledek testu:* netestováno
137
138 32 Jakub Homolka
h3. 8. Typy WorkItemů !red_cross.jpg!
139 3 Jakub Homolka
140 32 Jakub Homolka
*Popis:* Ověření správného mapování různých typů WorkItem.
141
142 3 Jakub Homolka
**Kroky:**
143 32 Jakub Homolka
1. Stáhne se projekt obsahující různé typy entit (Issues, Commits, Artifacts)
144
2. Zkontrolují se záznamy v tabulce `work_item`
145 3 Jakub Homolka
146 1 Štěpán Faragula
**Očekávaný výsledek:**
147 3 Jakub Homolka
- Každý work item má správně nastavený podle svého původu (COMMIT, ISSUE, ARTIFACT atd.) `workItemType`
148 1 Štěpán Faragula
- Všechny work items mají správně nastavené pole podle zdrojového systému `externalId`
149
- Existuje korektní reference na autora v poli `authorId`
150
151 3 Jakub Homolka
*Výsledek testu:* netestováno
152
153 32 Jakub Homolka
h3. 9. Historie změn !red_cross.jpg!
154 3 Jakub Homolka
155 32 Jakub Homolka
*Popis:* Ověření zachování historie změn WorkItemů. 
156
157 4 Jakub Homolka
**Kroky:**
158 32 Jakub Homolka
1. Stáhne se projekt s issue, které prošlo několika změnami stavu
159
2. Zkontroluje se struktura tabulek `field_change` a `work_item_change`
160 1 Štěpán Faragula
161
**Očekávaný výsledek:**
162
- Pro každou změnu existuje záznam v tabulce `work_item_change`
163 3 Jakub Homolka
- Pole v `name` správně indikuje typ změny (ADD, MODIFY, COMMENT) `work_item_change`
164
- V tabulce `field_change` jsou uloženy konkrétní změny polí s hodnotami před a po změně
165
166
*Výsledek testu:* netestováno
167
168 32 Jakub Homolka
h3. 10. Kategorie a a Labels !red_cross.jpg!
169 3 Jakub Homolka
170 32 Jakub Homolka
*Popis:* Ověření mapování kategorii a labelů.
171
172 8 Jakub Homolka
**Kroky:**
173 32 Jakub Homolka
1. Stáhne se GitHub projekt s dobře označkovanými issues
174
2. Zkontrolují se záznamy v tabulce `work_unit` a vazební tabulce mezi `work_unit` a `category`
175 3 Jakub Homolka
176
**Očekávaný výsledek:**
177
- Všechny GitHub Labels jsou uloženy jako entity `Category`
178
- Vazby mezi Work Units a kategoriemi jsou korektně uloženy v propojovací tabulce
179
- Kategorie mají správný odkaz na `projectInstance`
180
181
*Výsledek testu:* netestováno
182 1 Štěpán Faragula
183 33 Jakub Homolka
h3. 11. Konfigurace commitů !red_cross.jpg!
184 1 Štěpán Faragula
185 33 Jakub Homolka
*Popis:* Ověření správy Configuration a CommittedConfiguration.
186
187 8 Jakub Homolka
**Kroky:**
188 33 Jakub Homolka
1. Stáhne se Git projekt s několika commity
189 4 Jakub Homolka
2. Zkontroluj záznamy a vazby v tabulkách `committed_configuration`, `configuration` a `commit`
190 3 Jakub Homolka
191
**Očekávaný výsledek:**
192
- Každý WorkItem typu COMMIT má přiřazenou konfiguraci
193
- V tabulce `committed_configuration` existuje záznam pro každý commit
194
- Tabulka obsahuje správné reference na branch a committed_configuration `commit`
195 1 Štěpán Faragula
196 3 Jakub Homolka
*Výsledek testu:* netestováno
197 1 Štěpán Faragula
198 33 Jakub Homolka
h3. 12. Větve a commity !red_cross.jpg!
199 1 Štěpán Faragula
200 33 Jakub Homolka
*Popis:* Test na propojení mezi commit a branches.
201
202 27 Jakub Homolka
**Kroky:**
203 33 Jakub Homolka
1. Stáhne se Git repozitář s více větvemi obsahujícími stejné commity
204
2. Zkontrolují se tabulky a vazební tabulka mezi `branch` a `commit`
205 3 Jakub Homolka
206 1 Štěpán Faragula
**Očekávaný výsledek:**
207
- Pro každou branch v repozitáři existuje záznam v tabulce `branch`
208 3 Jakub Homolka
- V propojovací tabulce mezi `commit` a `branch` je správně zaznamenáno, které commity patří do kterých větví 
209 1 Štěpán Faragula
- Commit patřící do více větví má správný počet záznamů ve vazební tabulce
210
211
*Výsledek testu:* netestováno
212 3 Jakub Homolka
213 33 Jakub Homolka
h3. 13.  Vazby instancí  !red_cross.jpg!
214 8 Jakub Homolka
215 33 Jakub Homolka
*Popis:* Test na vazby Tool Instance a Project Instance
216
217 3 Jakub Homolka
**Kroky:**
218 33 Jakub Homolka
1. Nakonfiguruje se více projektů na stejné instanci nástroje (např. více repozitářů na jednom GitHub účtu)
219
2. Zkontrolují se záznamy v tabulkách `tool_instance` a `project_instance`
220 3 Jakub Homolka
221 1 Štěpán Faragula
**Očekávaný výsledek:**
222
- V tabulce `tool_instance` existuje pouze jeden záznam pro jednu instanci nástroje
223
- Každý project má vlastní záznam v `project_instance`
224 3 Jakub Homolka
- Všechny project instance odkazují na správnou tool instance
225
226 8 Jakub Homolka
*Výsledek testu:* netestováno
227 27 Jakub Homolka
228 33 Jakub Homolka
h3. 14. Klasifikační tabulky !red_cross.jpg!
229 3 Jakub Homolka
230 33 Jakub Homolka
*Popis:* Ověření mapování priorit, statusů a další klasifikačních tabulek.
231
232 3 Jakub Homolka
**Kroky:**
233 33 Jakub Homolka
1. Stáhnou se projekty z různých ALM nástrojů s různými prioritami a statusy
234
2. Zkontrolují se záznamy v tabulkách `wu_type`, `priority`, `status`, `severity` a `resolution`
235 1 Štěpán Faragula
236 3 Jakub Homolka
**Očekávaný výsledek:**
237
- Každá entita má správně nastavené pole `class` podle mapování z ALM nástroje
238
- Každá entita je správně přiřazena k příslušné `project_instance`
239 1 Štěpán Faragula
- Entity se stejným významem z různých nástrojů jsou mapovány na stejnou klasifikaci
240 2 Štěpán Faragula
241 8 Jakub Homolka
*Výsledek testu:* netestováno
242
243 33 Jakub Homolka
h3. 15. Správa osob a rolí !red_cross.jpg!
244 1 Štěpán Faragula
245 33 Jakub Homolka
*Popis:* Test na persistenci Person a jejich vazeb 
246
247 29 Jakub Homolka
**Kroky:**
248 33 Jakub Homolka
1. Stáhne se projekt, kde stejná osoba vystupuje v různých rolích (autor, assignee, committer)
249
2. Zkontrolují se tabulky `person` a `person_role` 
250 1 Štěpán Faragula
251
**Očekávaný výsledek:**
252
- V tabulce existuje pouze jeden záznam pro jednu osobu `person`
253
- V tabulce `person_role` jsou správně zaznamenány různé role osoby
254
- Osoby se stejným jménem ale různými identifikátory jsou správně rozlišeny
255
256
*Výsledek testu:* netestováno
257
258
----
259
260
Autor: Jakub Homolka
261
Datum: 24.4.2025
262
Stav: rozdělaný