Professional Documents
Culture Documents
Spis treci
Przykadowy rozdzia
Katalog ksiek
Dane testowe.
Teoria i Praktyka
Autor: Radosaw Smilgin, Anna Piaskowy
ISBN: 978-83-246-2520-8
Format: 158235, stron: 122
Katalog online
Zamw drukowany
katalog
Ksika, ktrej nie moe zabrakn w biblioteczce ambitnego programisty!
Twj koszyk
Dodaj do koszyka
Cennik i informacje
Zamw informacje
o nowociach
Zamw cennik
Czytelnia
Fragmenty ksiek
online
Kontakt
Helion SA
ul. Kociuszki 1c
44-100 Gliwice
tel. 32 230 98 63
e-mail: helion@helion.pl
Helion 19912010
Spis treci
Wstp .............................................................................................. 7
Rozdzia 1. Komu potrzebne s dane testowe? ................................................... 9
Rozdzia 2. Testowanie i dane .......................................................................... 13
2.1. Dane wymagane oraz niewymagane ........................................................................ 13
2.1.1. Oznaczenie pl wymaganych ........................................................................ 13
2.1.2. Walidacja danych .......................................................................................... 14
2.1.3. Zagadnienia zwizane z wprowadzaniem danych ......................................... 17
2.2. Dane a przypadek testowy ....................................................................................... 19
2.3. Wybrane techniki projektowania przypadkw testowych ........................................ 20
2.3.1. Techniki programistyczne ............................................................................. 20
2.3.2. Techniki testerskie ........................................................................................ 21
2.3.3. Techniki oparte na dowiadczeniu ................................................................ 25
2.4. Proces definiowania danych .................................................................................... 26
2.5. Testowanie oparte na danych (Data Driven Testing) ............................................... 28
2.6. Zarzdzanie danymi ................................................................................................. 29
2.6.1. Dane testowe w procesie wytwarzania i testowania oprogramowania .......... 29
2.6.2. Dane testowe dla rnych typw testw ....................................................... 31
2.6.3. Dane testowe dla rnych typw aplikacji .................................................... 32
2.6.4. Dane testowe a testowanie w oparciu o ryzyko ............................................. 33
2.6.5. Zarzdzanie konfiguracj danych .................................................................. 34
2.7. Defekty danych ........................................................................................................ 35
Spis treci
5
3.17. NIP .......................................................................................................................... 62
3.17.1. Analiza ........................................................................................................ 62
3.17.2. Regulacje ..................................................................................................... 63
3.17.3. Przypadki testowe ....................................................................................... 63
3.18. REGON ................................................................................................................... 64
3.18.1. Analiza ........................................................................................................ 64
3.18.2. Regulacje ..................................................................................................... 64
3.18.3. Przypadki testowe ....................................................................................... 64
3.19. IBAN ....................................................................................................................... 66
3.19.1. Analiza ........................................................................................................ 66
3.19.2. Regulacje ..................................................................................................... 66
3.19.3. Przypadki testowe ....................................................................................... 66
3.20. Haso ....................................................................................................................... 67
3.20.1. Analiza ........................................................................................................ 67
3.20.2. Regulacje ..................................................................................................... 67
3.20.3. Przypadki testowe ....................................................................................... 67
Rozdzia 4.
Dane generowane
a dane rzeczywiste
4.1. Dane rzeczywiste
Najskuteczniejsze jako pozytywne dane testowe okazuj si dane rzeczywiste. Nic tak
nie sprawdzi systemu jak prawdziwe przypadki rodem z produkcji. I tak pierwsza
rzecz, jak wykonujemy podczas testowania, to sprawdzenie nowego systemu pod
ktem jego wsppracy z poprzednio zgromadzonymi danymi. To z kolei ma szczeglne znaczenie dla testw przygotowujcych system do migracji danych ze starego
systemu jeeli chcemy mie pewno , e dane skopiowane z poprzedniej wersji
systemu bd poprawnie dziaay w jego nowej odsonie.
70
71
72
Dane testowe. Teoria i Praktyka
73
74
Rysunek 4.1.
rodowisko pracy wyroczni testowej
75
Okazao si, e przydatno standardowych danych jest (delikatnie mwic) niezadowalajca. Dane te s zazwyczaj nadmiarowe i zawieraj du liczb powtarzajcych
si przypadkw. Potrzebne s wic generatory danych dopasowanych do konkretnego
projektu lub te odpowiednio spreparowane dane.
W teorii dane rzeczywiste s podzbiorem danych generowanych. Istnieje niewielkie
prawdopodobiestwo wygenerowania danych rzeczywistych przy wystarczajco duej
liczbie prb. W skoczonym czasie, jaki mamy na przetestowanie oprogramowania, nie
moemy sobie pozwoli na ryzyko testw w oparciu jedynie o dane generowane. Tabela
4.2 prezentuje rnice i podobiestwa midzy omawianymi danymi.
Tabela 4.2. Dane rzeczywiste i generowane rnice i podobiestwa
Rzeczywiste
Generowane
Dane pozytywne
W praktyce testy warto rozpocz od danych rzeczywistych, gdy pomagaj one wykry podstawowe bdy funkcjonalnoci. Wikszo danych wprowadzanych przez
uytkownikw to wanie dane rzeczywiste. Warto je zastosowa , poniewa gwarantuj
najwysze prawdopodobiestwo wykrycia defektw, ktre mog ujawni si uytkownikom. Ma tu zastosowanie zasada Pareto, zgodnie z ktr 80% uytkownikw uywa
20% funkcjonalnoci aplikacji. Oznacza to, e wikszo z nich bdzie wykonywaa
jedynie podstawowe operacje z aplikacj i nie bdzie zmuszaa jej do popisw ekwilibrystycznych. W uyciu bd przede wszystkim te dane, ktre s powszechne i popularne.
76
Due znaczenie ma rwnie grupa odbiorcw. Aplikacje pisane dla urzdw zazwyczaj
bd traktowane z niewiar i dystansem. Dane bd wprowadzane do systemu technik jednego lub dwch palcw i z uwag, na jak taka technika pozwala. Obserwacje
uytkownikw pokazuj, e bdy aplikacji traktuj oni jako swoj pomyk i nie szukaj
alternatywnych rozwiza. Dobitnie pokazuje to przykad pewnej urzdniczki z ZUS-u,
ktra, obsugujc aplikacj naliczajc emerytury, znalaza bd zwizany z nietypowym
przypadkiem jej uycia. W uproszczeniu polegao to na nieuwzgldnieniu w reguach
kalkulowania emerytur wytycznych dotyczcych pewnej wskiej grupy emerytw.
Pomimo e bd zosta znaleziony, nie zosta zgoszony do dziau informatycznego.
Wypaty byy kalkulowane rcznie, poza systemem informatycznym. Ten typ aplikacji
i rodzaj odbiorcw wymusza przede wszystkim testy z danymi rzeczywistymi w wielu
moliwych kombinacjach.
Z kolei oprogramowanie dedykowane specjalistom-informatykom bdzie na pewno
dokadnie sprawdzone. Pola aplikacji zostan z duym prawdopodobiestwem zweryfikowane pod ktem wszelkich moliwych kombinacji znakw, cyfr i liczb. W naturze
dowiadczonych uytkownikw ley konstruktywny pesymizm poczony z chci
udowodnienia, e aplikacja nie dziaa tak, jak powinna. Wida to chociaby w gorliwoci, z jak punktowany jest Microsoft za kady bd w swoim flagowym produkcie
Windowsie. Docignicie fantazji uytkownikw wymaga w tym przypadku generowania danych testowych. Jedynie maszyna jest bowiem w stanie przygotowa dane,
ktre mog zasymulowa ich inwencj.