Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (N1)
specjalność: Inżynieria chmurowa

Sylabus przedmiotu Automatyzacja testów:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia niestacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Automatyzacja testów
Specjalność Inżynieria oprogramowania
Jednostka prowadząca Katedra Inżynierii Oprogramowania i Cyberbezpieczeństwa
Nauczyciel odpowiedzialny Luiza Fabisiak <Luiza.Fabisiak@zut.edu.pl>
Inni nauczyciele
ECTS (planowane) 3,0 ECTS (formy) 3,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL7 10 1,50,50zaliczenie
wykładyW7 10 1,50,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Podstawowa wiedza z zakresu inżynierii oprogramowania i programowania.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z metodami projektowania, analizowania, wytwarzania i testowania oprogramowania, rodzajami testów oprogramowania, metod białoskrzynkowych oraz czarnoskrzynkowych.
C-2Ukształtowanie praktycznych umiejętności projektowania i implementowania przypadków testowych..

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Testy funkcjonalne - scenariusze testowe1
T-L-2Testy funkcjonalne - funkcjonalność/użyteczność stron interentwych oraz aplikacji1
T-L-3testy funkcjonalne - specyfikacja testowania: przypadki testowe; retesty; testy regresyjne - ZASADA FIRST1
T-L-4Testy jednostkowe - JUNIT 5 - Pierwszy test/Struktura testu Testowanie równości wartości i obiektów Matchery – Hamcrest i assertJ Testowanie kolekcji2
T-L-5Testy jednostkowe - JUNIT 5 Testowanie wyjątków Adnotacje @BeforeEach i @AfterEach, @AfterAll Oznaczeni testów Extension Model1
T-L-6Testy jednostkowe - JUNIT 5 Assumption i adnotacja @RepeatedTest Adnotacja @Tag Testy parametryzowane2
T-L-7Testy jednostkowe - Mockito 2 ArgumentCaptor Adnotacje i ustawienia restykcyjniści Obiekty typu Spy1
T-L-8Test Driven Development TDD w praktyce1
10
wykłady
T-W-1Wstęp do testowania.1
T-W-2Dlaczego testować? Siedem zasad testowania. Proces testowy.1
T-W-3Rodzaje testów. Model cyklu życia oprogramowania. Poziomy testów. Proces przeglądu.1
T-W-4Planowanie i tworzenie testów. Organizacja testów. Planowanie i szacowanie testów. Monitorowanie testów i nadzór nad testami.2
T-W-5Techniki tworzenia testów. Czarnoskrzynkowe techniki testowania. Białoskrzynkowe techniki testowania. Techniki testowania oparte na doświadczeniu.2
T-W-6Continuous integration1
T-W-7Zadania z tworzenia testów za pomocą odpowiednich technik testowania.2
10

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1uczestnictwo w zajęciach10
A-L-2Praca własna27
37
wykłady
A-W-1uczestnictwo w zajęciach10
A-W-2Konsultacje2
A-W-3Praca własna25
37

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykłady oparte na prezentacjach multimedialnych.
M-2Pokazy praktyczne - demonstracje użycia narzędzi.
M-3Ćwiczenia praktyczne z użyciem komputera.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena zadań zrealizowanych w ramach laboratorium.
S-2Ocena formująca: Ocena zadań domowych.
S-3Ocena podsumowująca: Całościowa ocena umiejętności praktycznych zdobytych podczas ćwiczeń laboratoryjnych.
S-4Ocena podsumowująca: Sprawdzenie wiedzy teoretycznej dotyczącej automatyzacji testowania.

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_D03.08_W01
Student zna oraz rozumie nowoczesne metody projektowania, analizowania, wytwarzania i testowania oprogramowania, w szczególności posiada wiedzę na temat rodzajów testów oprogramowania, metod białoskrzynkowych oraz czarnoskrzynkowych. Zna podstawowe języki programowania ich biblioteki, potrafi czytać i modyfikować istniejące programy.
I_1A_W03, I_1A_W04, I_1A_W05C-1T-W-1, T-W-2, T-W-3, T-W-4, T-W-5, T-W-6, T-W-7M-1, M-2S-4

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_D03.08_U01
Student potrafi projektować i implementować przypadki testowe posługując się narzędziami wspomagającymi proces wytwarzania oprogramowania. Rozumie przygotwane przez innych przypadki testowe i jest w stanie je modyfikować.
I_1A_U04, I_1A_U05, I_1A_U09C-2T-L-1, T-L-2, T-L-3, T-L-4, T-L-5, T-L-6, T-L-7, T-L-8M-2, M-3S-1, S-2, S-3

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_D03.08_W01
Student zna oraz rozumie nowoczesne metody projektowania, analizowania, wytwarzania i testowania oprogramowania, w szczególności posiada wiedzę na temat rodzajów testów oprogramowania, metod białoskrzynkowych oraz czarnoskrzynkowych. Zna podstawowe języki programowania ich biblioteki, potrafi czytać i modyfikować istniejące programy.
2,0
3,0Posiada poszerzoną wiedze w zakresie testowania oprogramowania, niezbędną do formułowania i rozwiązywania problemów w informatyce i dyscyplinach pokrewnych. Posiada wiedzę w zakresie projektowania, analizy oraz implementacji algorytmów, struktur danych oraz konstrukcji podstaw programistycznych, zna podstawowe problemy z testowania oprogramowania. Posiada wiedze o cyklu życia testowanego oprogramowania, zna podstawową teorię z wiedzy o testowaniu produktu, w szczególności obejmująco szeroko stosowane narzędzia wspomagające testowanie produktu. Ma podstawową wiedzę w zakresie programowania oraz zna podstawowe narzędzia do zarządzania testowanie,
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_D03.08_U01
Student potrafi projektować i implementować przypadki testowe posługując się narzędziami wspomagającymi proces wytwarzania oprogramowania. Rozumie przygotwane przez innych przypadki testowe i jest w stanie je modyfikować.
2,0
3,0Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny testowanego produktu, efektywności testowanych produktów i ich składowych. Potrafi pozyskiwać, przesyłać i przetwarzać dane, podsumowywać wyniki oraz dokonywać interpretacji na testowanym produkcie. Potrafi dobrać odpowiednie narzędzia do testowania produktu, zastosować metody biało i czarnoskrzynkowe oraz znać różnicę między przypadkami oraz warunkami testowanego produktu. Potrafi konfigurować programy komputerowe, instalować oraz uwzględniać sugestię wykładowcy. Potrafi dobrać i krytycznie ocenić elementy składowe testowanych produktów.
3,5
4,0
4,5
5,0

Literatura podstawowa

  1. Khorikov Vladimir, Testy jednostkowe. Zasady, praktyki i wzorce, Wydawnictwo Helion, 2020, 36016693
  2. Rafał Pawlak, Testowanie oprogramowania. Podręcznik dla początkujących, Helion, 2014, 459359

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Testy funkcjonalne - scenariusze testowe1
T-L-2Testy funkcjonalne - funkcjonalność/użyteczność stron interentwych oraz aplikacji1
T-L-3testy funkcjonalne - specyfikacja testowania: przypadki testowe; retesty; testy regresyjne - ZASADA FIRST1
T-L-4Testy jednostkowe - JUNIT 5 - Pierwszy test/Struktura testu Testowanie równości wartości i obiektów Matchery – Hamcrest i assertJ Testowanie kolekcji2
T-L-5Testy jednostkowe - JUNIT 5 Testowanie wyjątków Adnotacje @BeforeEach i @AfterEach, @AfterAll Oznaczeni testów Extension Model1
T-L-6Testy jednostkowe - JUNIT 5 Assumption i adnotacja @RepeatedTest Adnotacja @Tag Testy parametryzowane2
T-L-7Testy jednostkowe - Mockito 2 ArgumentCaptor Adnotacje i ustawienia restykcyjniści Obiekty typu Spy1
T-L-8Test Driven Development TDD w praktyce1
10

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wstęp do testowania.1
T-W-2Dlaczego testować? Siedem zasad testowania. Proces testowy.1
T-W-3Rodzaje testów. Model cyklu życia oprogramowania. Poziomy testów. Proces przeglądu.1
T-W-4Planowanie i tworzenie testów. Organizacja testów. Planowanie i szacowanie testów. Monitorowanie testów i nadzór nad testami.2
T-W-5Techniki tworzenia testów. Czarnoskrzynkowe techniki testowania. Białoskrzynkowe techniki testowania. Techniki testowania oparte na doświadczeniu.2
T-W-6Continuous integration1
T-W-7Zadania z tworzenia testów za pomocą odpowiednich technik testowania.2
10

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1uczestnictwo w zajęciach10
A-L-2Praca własna27
37
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1uczestnictwo w zajęciach10
A-W-2Konsultacje2
A-W-3Praca własna25
37
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_D03.08_W01Student zna oraz rozumie nowoczesne metody projektowania, analizowania, wytwarzania i testowania oprogramowania, w szczególności posiada wiedzę na temat rodzajów testów oprogramowania, metod białoskrzynkowych oraz czarnoskrzynkowych. Zna podstawowe języki programowania ich biblioteki, potrafi czytać i modyfikować istniejące programy.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W03Ma szczegółową wiedzę w zakresie wybranych specjalności informatyki technicznej.
I_1A_W04Ma wiedzę o stanie obecnym i kierunkach rozwoju kluczowych obszarów informatyki i wybranych aspektów dyscyplin z otoczenia informatyki.
I_1A_W05Ma wiedzę o nowoczesnych metodach projektowania, analizowania, wytwarzania, testowania oprogramowania oraz rozwiązywania wybranych zadań inżynierskich obejmujących w szczególności narzędzia wspomagające wytwarzanie oprogramowania na różnych etapach powstawania, eksploatacji i rozwoju systemów informatycznych.
Cel przedmiotuC-1Zapoznanie studentów z metodami projektowania, analizowania, wytwarzania i testowania oprogramowania, rodzajami testów oprogramowania, metod białoskrzynkowych oraz czarnoskrzynkowych.
Treści programoweT-W-1Wstęp do testowania.
T-W-2Dlaczego testować? Siedem zasad testowania. Proces testowy.
T-W-3Rodzaje testów. Model cyklu życia oprogramowania. Poziomy testów. Proces przeglądu.
T-W-4Planowanie i tworzenie testów. Organizacja testów. Planowanie i szacowanie testów. Monitorowanie testów i nadzór nad testami.
T-W-5Techniki tworzenia testów. Czarnoskrzynkowe techniki testowania. Białoskrzynkowe techniki testowania. Techniki testowania oparte na doświadczeniu.
T-W-6Continuous integration
T-W-7Zadania z tworzenia testów za pomocą odpowiednich technik testowania.
Metody nauczaniaM-1Wykłady oparte na prezentacjach multimedialnych.
M-2Pokazy praktyczne - demonstracje użycia narzędzi.
Sposób ocenyS-4Ocena podsumowująca: Sprawdzenie wiedzy teoretycznej dotyczącej automatyzacji testowania.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Posiada poszerzoną wiedze w zakresie testowania oprogramowania, niezbędną do formułowania i rozwiązywania problemów w informatyce i dyscyplinach pokrewnych. Posiada wiedzę w zakresie projektowania, analizy oraz implementacji algorytmów, struktur danych oraz konstrukcji podstaw programistycznych, zna podstawowe problemy z testowania oprogramowania. Posiada wiedze o cyklu życia testowanego oprogramowania, zna podstawową teorię z wiedzy o testowaniu produktu, w szczególności obejmująco szeroko stosowane narzędzia wspomagające testowanie produktu. Ma podstawową wiedzę w zakresie programowania oraz zna podstawowe narzędzia do zarządzania testowanie,
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_D03.08_U01Student potrafi projektować i implementować przypadki testowe posługując się narzędziami wspomagającymi proces wytwarzania oprogramowania. Rozumie przygotwane przez innych przypadki testowe i jest w stanie je modyfikować.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U04Potrafi identyfikować związki i zależności w procesach zachodzących w systemach rzeczywistych i na tej podstawie tworzyć modele komputerowe oraz przeprowadzać ich symulacje.
I_1A_U05Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny wydajności, złożoności, efektywności systemów informatycznych i ich składowych.
I_1A_U09Potrafi dobrać właściwe metody i narzędzia do rozwiązywania wybranych zadań informatycznych w warunkach nie w pełni przewidywalnych.
Cel przedmiotuC-2Ukształtowanie praktycznych umiejętności projektowania i implementowania przypadków testowych..
Treści programoweT-L-1Testy funkcjonalne - scenariusze testowe
T-L-2Testy funkcjonalne - funkcjonalność/użyteczność stron interentwych oraz aplikacji
T-L-3testy funkcjonalne - specyfikacja testowania: przypadki testowe; retesty; testy regresyjne - ZASADA FIRST
T-L-4Testy jednostkowe - JUNIT 5 - Pierwszy test/Struktura testu Testowanie równości wartości i obiektów Matchery – Hamcrest i assertJ Testowanie kolekcji
T-L-5Testy jednostkowe - JUNIT 5 Testowanie wyjątków Adnotacje @BeforeEach i @AfterEach, @AfterAll Oznaczeni testów Extension Model
T-L-6Testy jednostkowe - JUNIT 5 Assumption i adnotacja @RepeatedTest Adnotacja @Tag Testy parametryzowane
T-L-7Testy jednostkowe - Mockito 2 ArgumentCaptor Adnotacje i ustawienia restykcyjniści Obiekty typu Spy
T-L-8Test Driven Development TDD w praktyce
Metody nauczaniaM-2Pokazy praktyczne - demonstracje użycia narzędzi.
M-3Ćwiczenia praktyczne z użyciem komputera.
Sposób ocenyS-1Ocena formująca: Ocena zadań zrealizowanych w ramach laboratorium.
S-2Ocena formująca: Ocena zadań domowych.
S-3Ocena podsumowująca: Całościowa ocena umiejętności praktycznych zdobytych podczas ćwiczeń laboratoryjnych.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0Potrafi zaplanować i zrealizować eksperymenty w zakresie oceny testowanego produktu, efektywności testowanych produktów i ich składowych. Potrafi pozyskiwać, przesyłać i przetwarzać dane, podsumowywać wyniki oraz dokonywać interpretacji na testowanym produkcie. Potrafi dobrać odpowiednie narzędzia do testowania produktu, zastosować metody biało i czarnoskrzynkowe oraz znać różnicę między przypadkami oraz warunkami testowanego produktu. Potrafi konfigurować programy komputerowe, instalować oraz uwzględniać sugestię wykładowcy. Potrafi dobrać i krytycznie ocenić elementy składowe testowanych produktów.
3,5
4,0
4,5
5,0