Testowanie aplikacji JAVA Laboratorium 8 (Tabele w scenariuszach JBehave. Projekt z podstaw BDD oraz atrap.)

Podobne dokumenty
Programowanie w Ruby

Testowanie aplikacji. Kurs języka Ruby

AKADEMIA GÓRNICZO-HUTNICZA Wydział Elektrotechniki, Automatyki, Elektroniki i Informatyki

Instrukcja instalacji v2.0 Easy Service Manager

QualitySpy moduł persystencji

LeftHand Sp. z o. o.

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008

Wdrożenie modułu płatności eservice dla systemu PrestaShop

Instrukcja integratora - obsługa dużych plików w epuap2

Generatory pomocy multimedialnych

Wdrożenie modułu płatności eservice. dla systemu PrestaShop

REFERAT PRACY DYPLOMOWEJ

JUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska

QualitySpy moduł reports

Systemy operacyjne. Tworzenie i zarządzanie kontami użytkowników

Instrukcja użytkownika

Wdrożenie modułu płatności eservice. dla systemu Magento

Krok 2: Pierwsze uruchomienie

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

Testowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.

Procedura wygenerowania paczki instalacyjnej oprogramowania F-Secure

Definiowanie drukarek w programie ZAFIR

Instrukcja instalacji i obsługi programu Szpieg 3

SYSTEM INFORMATYCZNY KS-SEW

Wdrożenie modułu płatności eservice dla systemu PrestaShop

Zaawansowane aplikacje internetowe

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Jednolity Plik Kontrolny (JPK) instrukcja użytkownika DGCS System Spis treści

Szpieg 2.0 Instrukcja użytkownika

Programowanie w Ruby

LeftHand Sp. z o. o.

System obsługi ubezpieczeń FORT

Wdrożenie modułu płatności eservice. dla systemu Zen Cart

Tutaj znajdziesz Odpowiedź na: Najczęściej Spotykane Problemy Najczęściej zadawane Pytania

UNIFON podręcznik użytkownika

Uruchamianie bazy PostgreSQL

Kancelaria instalacja programu

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

Techniki efektywnego testowania kodu dla programistów Java (Spock

Platformy Technologiczne

JPK w DGCS INFOR System

Praca z programami SAS poza lokalną siecią komputerową UZ. Zestawienie tunelu SSH oraz konfiguracja serwera proxy w przeglądarce WWW

METODY PROGRAMOWANIA

Integracja APD z Ogólnopolskim Repozytorium Prac Dyplomowych

INSTRUKCJA OBSŁUGI Wersja: 1.8

Program do obsługi ubezpieczeń minifort

Platformy Technologiczne

SMS Kod Automatyczny

Instrukcja użytkownika. Aplikacja dla Comarch Optima

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Informacje ogólne o projekcie

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

Instrukcja obsługi aplikacji X-Trade DDE To MetaStock Chart 1.1

Gry sieciowe LDC Panel nauczyciela i administratora instrukcja obsługi

Instrukcja użytkownika. Aplikacja dla Magento

Instalacja i konfiguracja Symfonia.Common.Server oraz Symfonia.Common.Forte

Instrukcja użytkownika. Aplikacja dla Comarch ERP XL

ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

W grze bierze udział dwóch graczy. Każdy uczestnik rozpoczyna rozgrywkę z sumą

Symulator tabletu z systemem Windows 8.

INSTRUKCJA INSTALACJI I OBSŁUGI ZBIORCZE E-DEKLARCJE. dla Księgi PiR oraz Płac DOS

Korporacyjna Magistrala Usług na przykładzie Mule ESB

Instrukcja użytkownika. Aplikacja dla Comarch Optima

MPH Mini. Instrukcja użytkownika ver 102 ( )

Poradnik korzystania z usługi FTP

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Testowanie II. Cel zajęć. Pokrycie kodu

Budowa aplikacji ASP.NET współpracującej z bazą danych do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

Budowa aplikacji ASP.NET współpracującej z bazą dany do przeprowadzania ankiet internetowych

Instrukcja użytkownika. Aplikacja dla WF-Mag

HermesEX. Dokumentacja serwisowa v

Praca z programami SAS poza lokalną siecią komputerową UZ. Zestawienie tunelu SSH oraz konfiguracja serwera proxy w przeglądarce WWW

Projekt zaliczeniowy. Mateusz Hołenko Andrzej Stroiński Piotr Zierhoffer 21 grudnia 2015

Użytkowniku programu FINKA, przekazujemy E-book, który omawia najważniejsze kwestie dotyczące generowania i wysyłania JPK.

KURIER BY CTI. Instrukcja do programu DATA Informatycznej Zygmunt Wilder w Gliwicach WERSJA mgr Katarzyna Wilder DLA DPD

Przychodnia 0. Stwórz projekt aplikacja konsolowa lub WPF (przemyśl wybór, bo zmiana może być czasochłonna). 1. Stwórz abstrakcyjną klasę Osoba.

Wdrożenie do projektu

WYDRA BY CTI. WYSYŁANIE DOKUMENTÓW ROZLICZENIOWYCH I ARCHIWIZACJA Instrukcja do programu

Symfonia Produkcja Instrukcja instalacji. Wersja 2013

BACKUP BAZ DANYCH FIREBIRD

Jednolity Plik Kontrolny (JPK) instrukcja użytkownika

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Baza danych sql. 1. Wprowadzenie

Wdrożenie modułu płatności eservice. dla systemu Virtuemart 1.1.x x

Dokument Detaliczny Projektu

System magazynowy małego sklepu.

Instrukcja obsługi modułu MPlatform.

Uruchomienie aplikacji elektronicznych na platformie epuap

Szkolenie: Testowanie wydajności (Performance Testing)

Ćwiczenie 8 Implementacja podpisu cyfrowego opartego na standardzie X.509

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

SPECYFIKACJA WDROŻENIA SKLEPU MAGENTO

Transkrypt:

Testowanie aplikacji JAVA Laboratorium 8 (Tabele w scenariuszach JBehave. Projekt z podstaw BDD oraz atrap.) Przykład z użycia bezpośrednio tabel w scenariuszach JBehave znajduje się tutaj. Zadanie 1 (0.5 pkt). Do pokazanego przykładu dokończ metodę thenpowersandsizeissizepowers(examplestable table) uzupełniając ją o odpowiednią asercje. Dopisz co najmniej jeden podobny scenariusz (w osobnym pliku!) do tego przykładu. Zadanie 2 (0.25 pkt). Do poprzedniego zadania dopisz scenariusz (w osobnym pliku), który uruchomi poprzednie dwa scenariusze, będących w innych plikach. Wskazówka: Poszukaj informacji o Given Stories w JBehave. Zadanie 3 (0.75 pkt). Do zadania z przyjaciółmi (poprzednie zadania) dopisz co najmniej 4 scenariusze wykorzystując testy parametryczne (co najmniej 2) oraz z wykorzystaniem bezpośrednio tabel w scenariuszach (co najmniej 2). Scenariusze nie mają mieć pojedynczych przykładów (co najmniej dwa wiersze w tabelach).

PROJEKTY Wybieramy jedno z poniższych zadań. Zadania różnią się poziomem trudności i są inaczej punktowane. Każdy projekt ma być wykonany w Maven! Projekt nie powinien zawierać pliku jar oraz folderu target. Nie działanie mvn test wiąże się z niezaliczonym projektem! Przesyłanie projektu będzie odbywało się przy pomocy utworzenia Issue w swoim repozytorium. Utworzenie Issue wiąże się z oddanym projektem. Wszelkie zmiany po Issue będą obcinane ilością punktów. TERMIN: 23.04.2017 Spóźnienia z terminem będą wiązały się z mniejszą ilością punktów. Maksymalne spóźnienie wynosi 26.04.2017 i wtedy obowiązuje 50% punktów z projektu. A więc dzień zwłoki oznacza obniżenie progu o 15%. Po tym terminie projekty liczone są na 0%! Ponadto pod ocenę będzie brany styl projektu: jak zapisane są testy i jak sprawdzane są asercje. Testy powinny wykorzystywać wiele różnych asercji (a nie tylko assertequals)! Ponadto po sprawdzeniu projektu należy go obronić: będą to krótkie pytania i ewentualne drobne zmiany w kodzie podane przez prowadzącego! Projekt 1 (12 pkt). Tutaj znajduje się interfejs panelu sterującegp odtwarzaczem MP3. Utwórz klasę wypełniając metody z interfejsu i przetestuj działanie odtwarzacza MP3. Przykładowa klasa testująca jest tutaj. Pod ocenę będą brane pod uwagę następujące elementy: (1 pkt) Uwzględnienie powyższych wymagań. (3 pkt) Przypadki testowe (uwzględniające wyjątki). (1 pkt) Przetestowanie przy użyciu Mockito (co najmniej 5 testów). (1 pkt) Przetestowanie przy użyciu EasyMock (co najmniej 5 testów). (1 pkt) Zastosowanie testów akceptacyjnych (co najmniej 5 scenariuszy).

Projekt 2 (16 pkt). Jesteś deweloperem piszącym fragment (bardzo uproszczonej) aplikacji (tutaj klasy Messenger) wysyłającej komunikaty do serwera. Twoja klasa korzysta z implementacji interfejsu MessageService. Zadaniem twojej aplikacji (uwaga: często spotykane w praktyce) jest m.in. ukrywanie statusów oraz wyjątków generowanych przez wykorzystywane komponenty takie jak MessageService. Zgodnie z życzeniem klienta twoja metoda odpowiedzialna za wysyłanie komunikatów ma zwracać liczby: 0 gdy powodzenie 1 gdy występują problemy z wysłaniem 2 gdy adres serwera lub komunikat jest niewłaściwie zbudowany Klasa Messenger powinna też dostarczać metodę do testowania połączenia z serwerem zwracającym liczby: 0 w przypadku sukcesu 1 w przeciwnym przypadku Szkielet systemu jest zaimplementowany tutaj. Dokończ klasę Messenger, a następnie przy użyciu poznawanych technologii przeprowadź testy jednostkowe w tzw. izolacji (czyli bez gotowej implementacji MessageService) Pod ocenę będą brane pod uwagę następujące elementy: (2 pkt) Uwzględnienie powyższych wymagań. (4 pkt) Przypadki testowe (uwzględniające wyjątki). (2 pkt) Przetestowanie przy użyciu Mockito (co najmniej 6 testów). (2 pkt) Przetestowanie przy użyciu EasyMock (co najmniej 6 testów, w tym połowa innych (1 pkt) Zastosowanie testów akceptacyjnych (co najmniej 5 scenariuszy).

Projekt 3 (20 pkt). Rozważmy grę w kółko i krzyżyk z poprzedniego projektu. Teraz dodajmy do tej gry bazę MongoDB z użyciem Jongo (patrz przykład wykorzystany w atrapach) Dopiszmy do niej odpowiednie wymagania: Dodaj opcję umożliwiającą zapisanie posunięcia z numerem kolejki, pozycjami na osiach X i Y oraz symbolem gracza (X lub O). Zapisuj każdy ruch w bazie danych i zapewnij to, że utworzenie nowej sesji spowoduje usunięcie starszych danych. Pod ocenę będą brane pod uwagę następujące elementy: (3 pkt) Uwzględnienie powyższych wymagań. (4 pkt) Przypadki testowe (uwzględniające wyjątki). (3 pkt) Przetestowanie przy użyciu Mockito (co najmniej 6 testów). (3 pkt) Przetestowanie przy użyciu EasyMock (co najmniej 6 testów, w tym połowa innych (2 pkt) Zastosowanie testów akceptacyjnych (co najmniej 8 scenariuszy).

Projekt 4 (25 pkt). Rozważmy bardzo uproszczoną aplikacje w sklepie internetowym, która jest opisana danym diagramem związków encji: Dane do bazy mają być przechowywane w jakimś systemie bazodanowym. Zaimplementuj odpowiednie metody tej aplikacji i przetestuj ją uwzględniając wymagania zawarte w diagramie używając atrap oraz scenariuszy akceptacyjnych. Pod ocenę będą brane pod uwagę następujące elementy: (4 pkt) Uwzględnienie powyższych wymagań. (6 pkt) Przypadki testowe (uwzględniające wyjątki). (3 pkt) Przetestowanie przy użyciu Mockito (co najmniej 8 testów). (3 pkt) Przetestowanie przy użyciu EasyMock (co najmniej 8 testów, w tym połowa innych (3 pkt) Zastosowanie testów akceptacyjnych (co najmniej 10 scenariuszy). (2 pkt) Wykorzystanie scenariuszy parametrycznych (co najmniej 4).