- Nazwa przedmiotu:
- Testowanie w teleinformatyce
- Koordynator przedmiotu:
- Krzysztof Brzeziński
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia II stopnia
- Program:
- Telekomunikacja
- Grupa przedmiotów:
- Przedmioty techniczne - zaawansowane
- Kod przedmiotu:
- TEWTE
- Semestr nominalny:
- 4 / rok ak. 2018/2019
- Liczba punktów ECTS:
- 5
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Bilans nakładu pracy przeciętnego studenta:
- udział w wykładach: 15 x 2 godz. = 30 godz.
- przygotowanie do wykładów (przejrzenie notatek): 15 x 0.5 godz. = 7.5 godz.
- udział w konsultacjach ogólnych (przy założeniu, że student dwukrotnie korzysta z 0.5 godz. konsultacji w semestrze): 1 godz.
- przygotowanie do kolokwium: 6 godz.
- udział w laboratoriach: 3 x 4 godz. = 12 godz.
- przygotowanie do laboratoriów: 3 x 6 godz. = 18 godz.
- udział w konsultacjach projektowych (przy założeniu, że student trzykrotnie korzysta z 1 godz. konsultacji w semestrze): 3 godz.
- realizacja projektu (wszystkie elementy łącznie) = 45 godzin
- przygotowanie do egzaminu: 12 godz.
- konsultacje przed egzaminem: 1 godz.
Łączny nakład pracy studenta wynosi zatem 135.5 godzin, co odpowiada 5 punktom ECTS.
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczycieli akademickich:
30 + 1 + 3 + 6 (udział nauczyciela akademickiego w laboratorium) + 1 + 4 (udział nauczyciela akademickiego w odbiorze projektu) = 45, co odpowiada ok. 2 punktom ECTS
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Nakład pracy studenta związany z zajęciami praktycznymi:
12 + 10 (uruchamianie projektu) = 22 (co odpowiada ok. 1 punktowi ECTS)
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład0h
- Ćwiczenia0h
- Laboratorium0h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Od studenta oczekuje się wiedzy i umiejętności z zakresu przedmiotu APPT.
- Limit liczby studentów:
- 26
- Cel przedmiotu:
- 1. Ukształtowanie rozumienia testowania jako przedmiotu dziedziny naukowej (“testologii"), z jej zbiorem paradygmatów, teorii, środowiskowych “szkół” (w tym - telekomunikacyjnej i informatycznej) oraz wzorców dla zastosowań praktycznych w poszczególnych dziedzinach.
2. Zapoznanie studentów ze zbiorem środków wyrazu (języków), metod, technik i narzędzi, w tym - standaryzowanych, służących do empirycznej oceny zachowania systemów teleinformatycznych.
3. Wyrobienie umiejętności przełożenia konkretnego problemu testowego na struktury i obiekty programowe systemu testowego, z elementami zaimplementowania takiego systemu i posłużenia się nim.
- Treści kształcenia:
- Wykłady:
(2h) Wprowadzenie ogólne. Niezbędne instrumenty formalne (teoria mnogości, logika, modele). System: struktura i zachowanie.
(2h) Postulowana nauka o testowaniu – "testologia". Testowanie a konstruowanie systemów: cykl życia, weryfikacja i walidacja. Pojęcie testowania - definicje. Poza-techniczne (epistemologiczne) podstawy testowania. Obiekty i role w testowaniu.
(2h) Pojęcia: poprawność i niepoprawność (błąd, defekt, usterka); cele testowania; hipotezy testowe; wykonanie testu, wynik testu, werdykt; jakość zestawu testów: pokrycie (coverage), adekwatność (soundness, exhaustiveness, completeness); problem wyroczni (oracle) i testowanie metamorficzne; problem wyboru (test selection); testowanie w kontekście; rozproszenie; asynchronizm. Podstawowe klasyfikacje metod i rodzajów testowania. Istota "model-based testing".
(3h) Telekomunikacyjne i informatyczne koncepcje testowania i ich ekspozycje w standardach. Testowanie w praktyce telekomunikacyjnej: standaryzacja testów i metod / środków testowania. Testowanie zgodności - standard przemysłowy ISO9646. Pragmatyczne projektowanie zestawów testów.
(4h) Język TTCN-3.
(2h) Struktury systemów testowych TTCN-3. Integracja systemu testowego.
(2h) Aspekty formalizacji i automatyzacji. Formalizacja testowania zgodności - standard ITU-T Z.500.
(3h) Relacje poprawności (równoważności, quasi-porządku): śladów (trace), obserwacyjnej, testowej, ioco (Tretmans). Testowanie z systemów przejść (LTS, IOTS). Elementy teorii: May/Must testing (de Nicola, Hennessy); tester kanoniczny.
(3h) Testowanie z modeli automatowych (FSM, EFSM). Elementy teorii: generowanie preambuły, sekwencji sprawdzającej / identyfikującej stan (W, E, UIO), sekwencji powrotnej (homing). Automatyczne i wspomagane generowanie testów.
(3h) Rozszerzenia: testowanie w kontekście, uwzględnianie niepewności (niewierności) obserwacji, testowanie nadążne (on-line, on-the-fly), testowanie bierne – istota, algorytmy, zastosowania.
(2h) Testy innych klas w praktyce telekomunikacyjnej. Niestandardowe zastosowania mechanizmów testowania.
Laboratorium:
Laboratorium składa się z trzech ćwiczeń, o następującej tematyce:
1. Język TTCN-3. Napisanie, uruchomienie w środowisku TTCN-3 i przeprowadzenie testów, mających na celu wykrycie usterek w zachowaniu wskazanego systemu. Część 1 – dla odpowiednio spreparowanej implementacji szkoleniowej.
2. J.w. Część 2 – dla rzeczywistego systemu telekomunikacyjnego.
3. Testowanie i monitorowanie systemu rzeczywistego. Wykorzystując rzeczywisty system telekomunikacyjny klasy ISDN/IP oraz profesjonalne przyrządy pomiarowe, studenci wykonują polecenia prowadzącego z zakresu monitorowania i testowania zachowania systemu.
Projekt:
Projekt jest wykonywany, nominalnie, w grupach 3-osobowych. Polega na opracowaniu aplikacji komputerowej z merytorycznego zakresu przedmiotu. Przykładowe tematy projektów to:
1. Integracja systemu testowego TTCN-3 (w tym – zrealizowanie bloku adaptera i bloku kodera-dekodera) tak, by możliwe było faktyczne wykonanie prostych testów systemu rzeczywistego.
2. Zaprojektowanie i wykonanie automatycznego, algorytmicznego generatora testów.
3. Zaprojektowanie i wykonanie uniwersalnego testera biernego dla warunków symulowanych.
- Metody oceny:
- Sprawdzanie osiągnięcia założonych celów kształcenia w zakresie oceny sumatywnej jest realizowane poprzez:
- sprawdzanie wiedzy i umiejętności wykazanych na kolokwium i egzaminie pisemnym o charakterze testu zamkniętego, z elementami otwartymi (możliwe zadanie problemowe); w razie wątpliwości sprawdzanie następuje w formie indywidualnego egzaminu ustnego;
- sprawdzenie wiedzy, umiejętności i kompetencji społecznych wykazanych podczas ćwiczeń laboratoryjnych: runda dyskusji lub krótkie kolokwium wstępne, uzupełniająca ocena bieżąca, sprawozdanie z ćwiczenia
- sprawdzenie wiedzy, umiejętności i kompetencji społecznych wykazanych przy realizacji projektu: ocena zademonstrowanego efektu i jego dokumentacji finalnej; złożona wcześniej dokumentacja wstępna jest poddawana jedynie ocenie formatywnej
Sprawdzanie osiągnięcia założonych celów kształcenia w zakresie oceny formatywnej następuje poprzez interaktywne elementy wykładów, podczas bezpośrednich kontaktów ze studentem w ramach ćwiczeń i konsultacji (wykładowych i projektowych), oraz poprzez złożenie uwag prowadzącego do wstępnej dokumentacji projektowej.
- Egzamin:
- tak
- Literatura:
- 1. K. M. Brzeziński, Wprowadzenie do testowania protokołów telekomunikacyjnych. IT P.W., skrypt, 2006-2010
2. D.Lee, M.Yannakakis, “Principles and Methods of Testing Finite State Machines - A Survey”, Proceedings of the IEEE, 1996, 84, 1090-1126
3. Standardy: ITU-T X.29x, ETSI EG 202 237, ETSI ES 201 873-x (TTCN-3), ISTQB “Standard Glossary of Terms Used in Software Testing”, ITU-T Z.500
4. IEEE SWEBOK chap.5
5. Zapewniane przez prowadzącego materiały pomocnicze – artykuły / rozdziały z prac na temat testowania oraz kopie prezentacji wykładowych
6. (pomocniczo) Broy, M.; Jonsson, B.; Katoen, J.; Leucker, M. & Pretschner, A. (ed.), Model-Based Testing of Reactive Systems, Springer, 2005, LNCS 3472
7. (pomocniczo) Spillner, A.; Linz, T; Schaefer, H., Software Testing Foundations, Rockynook, 2007
- Witryna www przedmiotu:
- https://studia.elka.pw.edu.pl/
- Uwagi:
- Przy realizacji laboratorium i ew. projektu (dla niektórych grup projektowych) wykorzystuje się licencjonowane środowisko testowe TTCN-3 TTWorkbench oraz bezpłatne narzędzie Loong Testing.
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Charakterystyka TWT1-W1
- Zna pojęcia związane z testowaniem systemów (w szczególności – z opartym na modelu testowaniem zachowania systemów teleinformatycznych), w ramach szerszego zespołu pojęć dotyczących ich projektowania i empirycznej weryfikacji / walidacji, z uwzględnieniem różnic środowiskowych dotyczących terminologii oraz założeń i oczekiwań.
Weryfikacja: kolokwium, egzamin
Powiązane charakterystyki kierunkowe:
K_W03, K_W10
Powiązane charakterystyki obszarowe:
I.P7S_WG
- Charakterystyka TWT1-W2
- Zna klasyfikacje i charakterystyki rodzajów (klas) testów wyróżnianych w telekomunikacji i informatyce, z odniesieniem do standaryzacji
Weryfikacja: kolokwium, egzamin
Powiązane charakterystyki kierunkowe:
K_W03, K_W04, K_W14
Powiązane charakterystyki obszarowe:
I.P7S_WG
Profil ogólnoakademicki - umiejętności
- Charakterystyka TWT1-U1
- Potrafi scharakteryzować cele, zasady, główne teorie i mechanizmy wytwarzania zestawów testów oraz dobrać kombinację tych elementów odpowiednią do zadanego problemu i stopnia pożądanej / możliwej formalizacji i automatyzacji
Weryfikacja: egzamin, projekt
Powiązane charakterystyki kierunkowe:
K_U06, K_U09, K_U15
Powiązane charakterystyki obszarowe:
III.P7S_UW.3.o, I.P7S_UW, I.P7S_UO, III.P7S_UW.2.o, III.P7S_UW.4.o, III.P7S_UW.1.o
- Charakterystyka TWT1-U2
- Potrafi zidentyfikować i opisać ograniczenia metod testowych (fundamentalne – w stosunku do metod opartych na manipulacji formalnej, pragmatyczne, a także wynikające z niedoskonałości elementu empirycznego) oraz wskazać praktyczne konsekwencje i sposoby minimalizacji tych ograniczeń.
Weryfikacja: egzamin, projekt
Powiązane charakterystyki kierunkowe:
K_U06, K_U08, K_U10
Powiązane charakterystyki obszarowe:
I.P7S_UW, III.P7S_UW.1.o, III.P7S_UW.3.o, III.P7S_UW.2.o
- Charakterystyka TWT1-U3
- Potrafi zinterpretować zapis testu sporządzony w języku TTCN-3, samodzielnie zapisać w tym języku prosty zestaw testów oraz pokierować integracją systemu testowego TTCN-3 (wskazując zadania do wykonania i odpowiednie źródła informacji szczegółowej bądź samodzielnie wykonując te zadania)
Weryfikacja: egzamin, laboratorium
Powiązane charakterystyki kierunkowe:
K_U09, K_U10
Powiązane charakterystyki obszarowe:
I.P7S_UW
Profil ogólnoakademicki - kompetencje społeczne
- Charakterystyka TWT1-K1
- Potrafi rozwiązywać w grupie zadania projektowe
Weryfikacja: projekt, laboratorium
Powiązane charakterystyki kierunkowe:
K_K01
Powiązane charakterystyki obszarowe:
I.P7S_KO