TESTOWANIE OPROGRAMOWANIA

Wielkość: px
Rozpocząć pokaz od strony:

Download "TESTOWANIE OPROGRAMOWANIA"

Transkrypt

1 TESTOWANIE OPROGRAMOWANIA Uważaj na ten program ja tylko udowodniłem jego poprawność, nie testowałem go Donald Knuth

2 Plan prezentacji 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki Testowanie oprogramowania 2 / 32

3 Testowanie wstęp Testowanie może wykazać wyłącznie istnienie bugów, nigdy ich brak. Edsger W. Dijkstra 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki Jeśli nie masz ochoty na testowanie swojego produktu, pamiętaj, że twoi klienci też nie będą tego robić autor nieznany Testowanie oprogramowania 3 / 32

4 Testowanie wstęp testowanie kodu na bieżąco wielokrotnie skraca czas potrzebny na usunięcie błędów w oprogramowaniu bez testów ukończenie programu (stworzenie działającej wersji) jest praktycznie niemożliwe Testowanie oprogramowania 4 / 20

5 Testowanie wstęp Co można testować? poprawność zgodność faktycznego zachowania programu z oczekiwanym wydajność spełnianie wymagań czasowych niezawodność odporność na działanie pod wymaganym obciążeniem bezpieczeństwo odporność na ataki, ochrona danych Testowanie oprogramowania 5 / 32

6 Testowanie wstęp Typy testowania ze względu na perspektywę black-box testing spojrzenie na system z zewnętrznego punktu widzenia; system jako czarna skrzynka, która ma realizować określone zadania i tylko pod tym kątem jest testowana np. testy odbioru white-box testing testowanie obejmujące wgląd we wnętrze programu: testujący przeprowadza test jednocześnie badając kod programu. Wymagane umiejętności programistyczne np. testy jednostkowe Testowanie oprogramowania 6 / 32

7 Refaktoryzacja refaktoryzacja poprawa jakości kodu bez zmiany jego funkcjonalności kluczowa dla skutecznego testowania i poprawiania błędów 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki przeprowadzenie testu to tylko połowa sukcesu - należy jeszcze poprawić błąd dobrze napisany kod ułatwia programowanie przyrostowe ( małymi krokami ) Testowanie oprogramowania 7 / 32

8 Refaktoryzacja Pierwszy lepszy głupiec potrafi napisać kod zrozumiały dla komputera. Dobrzy programiści piszą kod zrozumiały dla człowieka. Martin Fowler To świetna zabawa, kiedy można rozwikłać zagadkę morderstwa, ale kod nie powinien wymagać rozwikłania. Kod powinien dawać się czytać. Steve McConnell Testowanie oprogramowania 8 / 32

9 Testowanie podstawowe pojęcia bug każde zachowanie programu, które odbiega od oczekiwanego; zadaniem testów jest ich wyłapywanie i diagnozowanie jednostka pojedynczy element programu, podlegający testom jednostkowym, np. metoda, funkcja, klasa 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki przypadek testowy zestaw danych, który służy do przetestowania danej jednostki; zawiera dane wejściowe i odpowiadający im poprawny wynik Testowanie oprogramowania 9 / 32

10 Programowanie sterowane testami (ang. test-driven programming) testy jako sformalizowany sposób zapisu wymagań funkcjonalnych najpierw przygotowywany jest test (klasa testowa, przypadek testowy), a dopiero potem 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki tworzona jest jednostka, która ma za zadanie przejść test niezaliczenie testu jest równoznaczne z błędnym kodem (niespełnieniem wymagań) Testowanie oprogramowania 10 / 32

11 Programowanie sterowane testami (ang. test-driven programming) przygotowanie testu kompilacja testu BŁĄD błąd kompilacji (brak testowanej jednostki) przygotowanie jednostki testowanej kompilacja testu analiza wyniku i ewentualne poprawki Testowanie oprogramowania 11 / 32

12 Programowanie sterowane testami (ang. test-driven development) ZALETY bardzo przejrzyście sformułowane wymagania względem systemu zmniejszenie ilości błędów usterki wyłapywane na bieżąco oszczędności czasowe! (mniej debugowania) modularność, rozszerzalność kodu WADY dodatkowe nakłady pracy bez wyczuwalnych zysków (więcej tworzonego kodu) żmudny proces tworzenia testów Testowanie oprogramowania 12 / 32

13 Testy jednostkowe najniższy poziom testów zorganizowanych poprawność pojedynczych jednostek (klas, funkcji) 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki fragment programu (jednostka) poddawany jest testowi, a wynik działania porównywany jest z wcześniej przygotowanym wynikiem wzorcowym Testowanie oprogramowania 13 / 32

14 Testy jednostkowe bardzo elastyczne tworzenie przypadków testowych (można np. stworzyć zestaw testowy, który oczekuje na rzucenie określonego wyjątku) testy zautomatyzowane, wykonywane na bieżąco tworzą swoistą dokumentację czytając kod testu, można rozpoznać, jaka funkcjonalność jest wymagana od danej jednostki Testowanie oprogramowania 14 / 32

15 Testy jednostkowe Mock Objects (ang. mock - przedrzeźniać, udawać) obiekty symulujące działanie zewnętrznych, złożonych komponentów testy powinny być odizolowane od zewnętrznych czynników testowana powinna być wyłącznie jednostka przykład testując moduł wyświetlania, zamiast łączyć się z bazą przy każdym teście, tworzymy podróbkę połączenia, oszczędzając czas Testowanie oprogramowania 15 / 32

16 Testy jednostkowe Asercje warunki konieczne do zaliczenia testu jeden test zero lub więcej asercji; niezaliczenie którejkolwiek asercji to przerwanie testu z wynikiem negatywnym Przykłady: assertequals(a, b) przechodzi, gdy a == b assertnotnull(a) przechodzi, gdy a nie jest null Testowanie oprogramowania 16 / 32

17 JUnit testy jednostkowe w Javie wspiera zautomatyzowane przeprowadzanie testów klasy testowe opisywane za pomocą annotacji 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki bogata kolekcja pluginów do integracji Junit różnymi środowiskami użytkownika (Eclipse, NetBeans) Testowanie oprogramowania 17 / 32

18 JUnit testy jednostkowe w Javie object TestResult błędy object TestFailure interface TestListener interface Test Assert BaseTestRunner TestSuite TestCase TestRunner Testowanie oprogramowania 18 / 32

19 JUnit testy jednostkowe w Javie Przykład Przetestujemy metodę max() z klasy java.lang.math import org.junit.test; import static org.junit.assert.assertequals; public class MyTestClass public void testmax() { //kod testujący } } Testowanie oprogramowania 19 / 32

20 JUnit testy jednostkowe w Javie Przykład Testujemy metodę max() z klasy java.lang.math import org.junit.test; import static org.junit.assert.assertequals; public class MyTestClass public void testmax() { } } assertequals( 3, (int)math.max(3,6) ); //oblany assertequals( 6, (int)math.max(3,6) ); //zaliczony Testowanie oprogramowania 20 / 32

21 CppUnit testy jednostkowe w C++ Podobnie jak Junit wspiera automatyczne przeprowadzanie testów 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki klasy testujące dziedziczą po klasie CppUnit::TestCase i przykrywają metodę wirtualną runtest() rezultat jest obiektem (referencją do obiektu) klasy CppUnit::TestResult Testowanie oprogramowania 21 / 32

22 CppUnit testy jednostkowe w C++ Test TestFixture TestSuite TestSuite TestCaller<TestFixture> TestRunner TexTestRunner TestResult Testowanie oprogramowania 22 / 32

23 CppUnit testy jednostkowe w C++ Przykład Przetestujemy następującą funkcję max(): int max (int a, int b) { if ( a > b ) { return a; } else { return b; } } Tworzymy klasę testującą: #include <cppunit/testresult.h> #include <cppunit/testcase.h> class Max_test : public CppUnit::TestCase { public: void runtest() { assert(max(1,2)==1); //sztucznie wprowadzony błąd! assert(max(2,1)==2); }; Testowanie oprogramowania 23 / 32

24 CppUnit testy jednostkowe w C++ Przykład Uruchamiamy test z klasy testującej: void main() { CppUnit::TestResult result; Max_test max; } max.run( &result ); Testowanie oprogramowania 24 / 32

25 Testy integracyjne sprawdzanie poprawności współpracy pomiędzy komponentami systemu coraz większe grupy komponentów są integrowane i testowane pod 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki kątem wzajemnej komunikacji (met. iteracyjna), do momentu przetestowania systemu jako całości wykrywa usterki w interfejsach Testowanie oprogramowania 25 / 32

26 Testy systemowe testowanie systemu z perspektywy użytkownika końcowego przeprowadzane na kompletnym (w pełni zintegrowanym) systemie 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki badanie pod kątem spełnienia wymagań funkcjonalnych testerzy umyślnie usiłują wywołać błędy, robiąc wszystko, czego tylko można się spodziewać po userze (ang. destructive attitude) Testowanie oprogramowania 26 / 32

27 Testy regresyjne Patch to poprawka do programu, usuwająca stare błędy i dodająca nowe. Prawo Murphy'ego 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki Błędy pojawią się w jednej części działającego programu, kiedy zmienisz drugą, zupełnie z nią niepowiązaną Prawo Murphy'ego Testowanie oprogramowania 27 / 32

28 Testy regresyjne polegają na ponownym testowaniu fragmentu programu po wprowadzeniu modyfikacji mają na celu upewnienie się, że wprowadzona poprawka/modyfikacja nie stworzyła nowych bugów w innych częściach programu częstą metodą przeprowadzania jest ponowne uruchomienie wcześniej zaliczonych testów sprawdzenie, czy nie pojawiają się nowe błędy Testowanie oprogramowania 28 / 32

29 Pozostałe testy Testy integracyjno-systemowe testowanie stworzonego systemu pod kątem współpracy z innymi (system jako komponent) 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki Testy odbioru ostateczne testowanie gotowej aplikacji, gotowej do przekazania klientowi klient może dokonać testów odbioru na własną rękę (UAT, ang. User Acceptance Testing) Testowanie oprogramowania 29 / 32

30 Hierarchia testów testy jednostkowe testowanie testy integracyjne testy regresyjne testy systemowe poprawki testy integracyjno-systemowe BŁĄD testy odbioru (developera) testy odbioru (klienta) wykrycie błędu Testowanie oprogramowania 30 / 32

31 Narzędzia wspomagające testowanie xunit umowna nazwa bibliotek/frameworków do testów jednostkowych dostępny dla wielu języków JIRA, trac, Bugzilla oprogramowanie wspomagające zarządzanie projektem, raportowanie błędów i usterek 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki Canoo WebTest, WatiN otwarte narzędzia do efektywnego testowania aplikacji webowych JSystem narzędzie do zautomatyzowanego tworzenia testów systemowych więcej: Testowanie oprogramowania 31 / 32

32 Źródła, dalsze informacje [PL] (kurs Zaawansowane CPP, wykład 4 - Testowanie ) [EN] (bardzo rozbudowany artykuł) [EN] (portal dla testerów) 1. Testowanie wstęp 2. Refaktoryzacja 3. Pojęcia związane z testowaniem 4. Programowanie sterowane testami 5. Testy jednostkowe 5.1. JUnit 5.2. CppUnit 6. Testy integracyjne 7. Testy systemowe 8. Testy regresyjne 9. Pozostałe testy 10. Hierarchia testów 11. Narzędzia wspomagające testowanie 12. Źródła i przydatne linki [EN] (artykuł na temat testowania oprogramowania) Książki: Software Testing: A Craftsman's Approach Paul Jorgensen Sztuka testowania oprogramowania Glenford J. Myers Testowanie oprogramowania 32 / 32

Programowanie poprzez testy z wykorzystaniem JUnit

Programowanie poprzez testy z wykorzystaniem JUnit Programowanie poprzez testy z wykorzystaniem JUnit Programowanie ekstremalne (XP) XP zaproponowano w 1999 (K. Beck: Extreme Programming Explained ) XP dedykowane jest do projektów: O małym lub średnim

Bardziej szczegółowo

Testowanie oprogramowania

Testowanie oprogramowania Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój

Bardziej szczegółowo

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

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer Maven 2 podstawowe informacje Apache Maven jest narzędziem automatyzującym budowę oprogramowania

Bardziej szczegółowo

LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8

LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8 Inżynieria Oprogramowania 2013/14 LABARATORIUM 9 TESTY JEDNOSTKOWE JUNIT 3.8 Hierarchia klas: TestCase klasa testująca, będąca klasą bazową dla wszystkich przypadków testowych. Zawiera przypadki testowe

Bardziej szczegółowo

Testowanie aplikacji Java Servlets

Testowanie aplikacji Java Servlets Borland Developer Days 2004 2-3 czerwca 2004 Testowanie aplikacji Java Servlets Bartosz Walter mailto: Bartek.Walter@man.poznan.pl Agenda Aplikacje Java Servlets TM Jak testować aplikacje internetowe?

Bardziej szczegółowo

Testy automatyczne. Korzystające z junit

Testy automatyczne. Korzystające z junit Testy automatyczne Korzystające z junit Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

Programowanie kontraktowe w Javie

Programowanie kontraktowe w Javie 20 maja 2010 Spis treści 1 Programowanie kontraktowe Geneza Założenia Kontrakty w języku Eiffel 2 Definiowanie specyfikacji Weryfikacja poprawności aplikacji 3 Wykorzystanie założeń kontraktów 4 Asercje

Bardziej szczegółowo

Maciej Oleksy Zenon Matuszyk

Maciej Oleksy Zenon Matuszyk Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu

Bardziej szczegółowo

Wprowadzenie do testów jednostkowych. Marcin Dziedzic, Wiktor Żołnowski

Wprowadzenie do testów jednostkowych. Marcin Dziedzic, Wiktor Żołnowski Wprowadzenie do testów jednostkowych Marcin Dziedzic, Wiktor Żołnowski Część I: Koncepcja testów jednostkowych Co to jest test jednostkowy wg Wiki? Test jednostkowy (ang. unit test) to w programowaniu

Bardziej szczegółowo

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński Wskazówki projektowe Programowanie Obiektowe Mateusz Cicheński Przydatne zasady SOLID Wzorce struktury aplikacji MVC MVP MVVM Metody wytwarzania oprogramowania Manifest Zwinnego Wytwarzania Oprogramowania

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

Tester oprogramowania 2014/15 Tematy prac dyplomowych

Tester oprogramowania 2014/15 Tematy prac dyplomowych Tester oprogramowania 2014/15 Tematy prac dyplomowych 1. Projekt i wykonanie automatycznych testów funkcjonalnych wg filozofii BDD za pomocą dowolnego narzędzia Jak w praktyce stosować Behaviour Driven

Bardziej szczegółowo

Fuzzing OWASP 14.01.2010. The OWASP Foundation http://www.owasp.org. Piotr Łaskawiec J2EE Developer/Pentester

Fuzzing OWASP 14.01.2010. The OWASP Foundation http://www.owasp.org. Piotr Łaskawiec J2EE Developer/Pentester Fuzzing Piotr Łaskawiec J2EE Developer/Pentester 14.01.2010 Metrosoft (www.metrosoft.com) piotr.laskawiec@gmail.com Copyright The Foundation Permission is granted to copy, distribute and/or modify this

Bardziej szczegółowo

Testy poziom po poziomie

Testy poziom po poziomie poziom po poziomie Prowadzący: Tomasz Mielnik Eliza Słonińska Agenda 1. Modele prowadzenia projektów 2. V-Model 3. Poziomy testów 4. Typy testów 5. Zadanie 1 Modele prowadzenia projektów Wodospadowy (ang.

Bardziej szczegółowo

Automatyczne testowanie aplikacji Android

Automatyczne testowanie aplikacji Android Automatyczne testowanie aplikacji Android Arkadiusz Konior! 4developers!! Warszawa 7 kwietnia 2014 Agenda Testowanie Android Testing Framework Robotium Espresso monkey monkeyrunner UIAutomator Robolectric

Bardziej szczegółowo

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład VII - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Wytwarzanie oprogramowania Model tworzenia oprogramowania

Bardziej szczegółowo

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE

Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk. Nip 848-172-84-22 ZAPYTANIE OFERTOWE Ełk, dn. 15.10.2013 r. DOMSET Marcin Brochacki ul. Wojska Polskiego 43 lok. 3, 19-300 Ełk Nip 848-172-84-22 ZAPYTANIE OFERTOWE Firma DOMSET Marcin Brochacki zwraca się z prośbą o przesłanie oferty cenowej

Bardziej szczegółowo

Załącznik nr 19 do Umowy nr... z dnia... Plan Testów Systemu. Projekt ZEFIR 2

Załącznik nr 19 do Umowy nr... z dnia... Plan Testów Systemu. Projekt ZEFIR 2 Załącznik nr 19 do Umowy nr... z dnia... Plan Testów Systemu Projekt ZEFIR 2 1 Metryka dokumentu Nazwa projektu Właściciel projektu Izba Celna Wykonawca* Produkt Autorzy Plik_wersja

Bardziej szczegółowo

Testowanie jednostkowe. Jacek Starzyński, ZETiIS PW

Testowanie jednostkowe. Jacek Starzyński, ZETiIS PW Testowanie jednostkowe Jacek Starzyński, ZETiIS PW Testowanie Po co testować? Co testować? Kiedy testować? Jak testować? Narzędzia Po co testować? Testy nie udowadniają poprawności......ale pozwalają wykryć

Bardziej szczegółowo

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o

Wprowadzenie db4o - podstawy db4o - technikalia Przydatne wiadomości. Wprowadzenie. db4o. Norbert Potocki. 1 czerwca 2009. Norbert Potocki db4o Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie 1 czerwca 2009 Wprowadzenie - podstawy - technikalia Przydatne wiadomości Wprowadzenie = bjects = database for objects w pełni obiektowa

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006 IO - Plan wdrożenia M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................

Bardziej szczegółowo

Informatyzacja przedsiębiorstw WYKŁAD

Informatyzacja przedsiębiorstw WYKŁAD Informatyzacja przedsiębiorstw WYKŁAD dr inż. Piotr Zabawa IBM/Rational Certified Consultant pzabawa@pk.edu.pl wersja 0.1.0 07.10.2010 Wykład 5 Techniki pracy w środowisku Jboss Drools Wstęp Podobnie jak

Bardziej szczegółowo

Dokument Detaliczny Projektu

Dokument Detaliczny Projektu Dokument Detaliczny Projektu Dla Biblioteki miejskiej Wersja 1.0 Streszczenie Niniejszy dokument detaliczny projektu(ddp) przedstawia szczegóły pracy zespołu projektowego, nad stworzeniem aplikacji bazodanowej

Bardziej szczegółowo

Wyjątki. Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut.

Wyjątki. Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut. Wyjątki Streszczenie Celem wykładu jest omówienie tematyki wyjątków w Javie. Czas wykładu 45 minut. Wydaje się, że żaden użytkownik oprogramowania nie lubi, kiedy stosowany program nagle zawiesza się,

Bardziej szczegółowo

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD OPIS Praca programisty oprócz umiejętności i wiedzy technicznej, wymaga również doskonałej pracy z kodem. Umiejętności te

Bardziej szczegółowo

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016 Wykład 2 17 marca 2016 Dziedziczenie Klasy bazowe i potomne Dziedziczenie jest łatwym sposobem rozwijania oprogramowania. Majac klasę bazowa możemy ja uszczegółowić (dodać nowe pola i metody) nie przepisujac

Bardziej szczegółowo

Tworzenie przypadków testowych

Tworzenie przypadków testowych Tworzenie przypadków testowych Prowadząca: Katarzyna Pietrzyk Agenda 1. Wprowadzenie 2. Wymagania 3. Przypadek testowy Definicja Schemat Cechy dobrego przypadku testowego 4. Techniki projektowania Czarnej

Bardziej szczegółowo

Szybkość w biznesie. Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015

Szybkość w biznesie. Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015 Szybkość w biznesie Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015 Klient Wykonawca...wprowadzamy nowy typ przelewów do aplikacji internetowej. Dodam

Bardziej szczegółowo

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016

Kurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016 Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal

Bardziej szczegółowo

Automatyzacja procesu testowego

Automatyzacja procesu testowego Automatyzacja procesu testowego Prowadzący: Michał Zarzycki Krzysztof Prochowicz 1 Agenda 1. Wprowadzenie Omówienie pojęć związanych z automatyzacją testów 2. Porównanie testów manualnych i automatycznych

Bardziej szczegółowo

Warsztaty szkoleniowe. Technologia SafetyLon w systemach związanych z bezpieczeństwem funkcjonalnym Narzędzia SafetyLon Moduł 4.5.

Warsztaty szkoleniowe. Technologia SafetyLon w systemach związanych z bezpieczeństwem funkcjonalnym Narzędzia SafetyLon Moduł 4.5. Warsztaty szkoleniowe Technologia SafetyLon w systemach związanych z bezpieczeństwem funkcjonalnym Narzędzia SafetyLon Moduł 4.5 Plan prezentacji 1. 2. 3. Przegląd narzędzi programistycznych wykorzystywanych

Bardziej szczegółowo

Najwyżej ocenione raporty dla Mr Buggy 4

Najwyżej ocenione raporty dla Mr Buggy 4 Najwyżej ocenione raporty dla Mr Buggy 4 Uwagi Komisji: 1. Żaden z raportów nie otrzymał maksymalnej liczby punktów. 2. Poniżej prezentowane są oryginalne wersje raportów z usuniętymi danymi mogącymi identyfikować

Bardziej szczegółowo

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:

Bardziej szczegółowo

Studia podyplomowe PROGRAM NAUCZANIA PLAN STUDIÓW

Studia podyplomowe PROGRAM NAUCZANIA PLAN STUDIÓW 01-447 Warszawa ul. Newelska 6, tel. (+48 22) 34-86-520, www.wit.edu.pl Studia podyplomowe BEZPIECZEŃSTWO I JAKOŚĆ SYSTEMÓW INFORMATYCZNYCH PROGRAM NAUCZANIA PLAN STUDIÓW Studia podyplomowe BEZPIECZEŃSTWO

Bardziej szczegółowo

http://www.codeguru.pl/articleprint.aspx

http://www.codeguru.pl/articleprint.aspx Strona 1 z 8 Drukuj Zamknij Testowanie modułów oraz tworzenie metodą testy-najpierw 2003-10-15 08:00:44 Użytkownik systemowy - Administratorzy, Portal.NET Jeśli czytelnik jest jednym z nielicznych zapewne

Bardziej szczegółowo

WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH. Mirosław Gołda, Programista Java

WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH. Mirosław Gołda, Programista Java WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH Mirosław Gołda, Programista Java Agenda Kilka słów o języku Groovy Wpięcie Grooviego w projekt Springowy Testy jednostkowe

Bardziej szczegółowo

Inżynieria oprogramowania (Software Engineering)

Inżynieria oprogramowania (Software Engineering) Inżynieria oprogramowania (Software Engineering) Wykład 2 Proces produkcji oprogramowania Proces produkcji oprogramowania (Software Process) Podstawowe założenia: Dobre procesy prowadzą do dobrego oprogramowania

Bardziej szczegółowo

Zasady organizacji projektów informatycznych

Zasady organizacji projektów informatycznych Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych

Bardziej szczegółowo

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Pierwsze kroki Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura Co znaczy

Bardziej szczegółowo

Przegląd narzędzi do automatycznego testowania aplikacji internetowych. Jan Płoszczyca SKISR 2006

Przegląd narzędzi do automatycznego testowania aplikacji internetowych. Jan Płoszczyca SKISR 2006 Przegląd narzędzi do automatycznego testowania aplikacji internetowych Jan Płoszczyca SKISR 2006 Plan prezentacji Problemy przy tworzeniu serwisów Definicja zautomatyzowanego testowania Mity i fakty związane

Bardziej szczegółowo

Wprowadzenie do systemów informacyjnych

Wprowadzenie do systemów informacyjnych Wprowadzenie do systemów informacyjnych Kryteria oceny systemu Podstawowe metody projektowania UEK w Krakowie Ryszard Tadeusiewicz 1 UEK w Krakowie Ryszard Tadeusiewicz 2 Technologia informatyczna dzisiaj

Bardziej szczegółowo

Wstęp do testowania : Szymon Ramczykowski 29.04.2014

Wstęp do testowania : Szymon Ramczykowski 29.04.2014 Wstęp do testowania Presented by: Szymon Ramczykowski Date: 29.04.2014 Kainos 10-Jun-14 Gdzie jesteśmy Co robimy Branże Technologie Kainos w Gdańsku Ponad 100 osób zatrudnionych Wiele ciekawych projektów

Bardziej szczegółowo

Testowanie oprogramowania. Wykład 1 dlaczego testowanie jest niezbędne czym jest testowanie ogólne zasady testowania

Testowanie oprogramowania. Wykład 1 dlaczego testowanie jest niezbędne czym jest testowanie ogólne zasady testowania 1/30 Testowanie oprogramowania Adam Roman Instytut Informatyki UJ Wykład 1 dlaczego testowanie jest niezbędne czym jest testowanie ogólne zasady testowania Podstawowy proces testowy role i aktywności w

Bardziej szczegółowo

Wykład 7. Projektowanie kodu oprogramowania

Wykład 7. Projektowanie kodu oprogramowania Wykład 7 Projektowanie kodu oprogramowania Treść wykładu cykl życiowy oprogramowania zagadnienia inżynierii oprogramowania tworzenie oprogramowania z gotowych elementów tworzenie niezawodnego oprogramowania

Bardziej szczegółowo

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk Automatyzacja testów aplikacji webowych w Selenium podstawy Natalia Krawczyk Automatyzacja testów UI...... czyli symulacja operacji wykonywanych przez użytkownika na interfejsie aplikacji webowej Kiedy

Bardziej szczegółowo

Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: - Nazwa modułu: Programowanie obiektowe Rok akademicki: 2012/2013 Kod: ZIE-1-306-s Punkty ECTS: 3 Wydział: Zarządzania Kierunek: Informatyka i Ekonometria Specjalność: - Poziom studiów: Studia I stopnia

Bardziej szczegółowo

Metodyki programowania. Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl

Metodyki programowania. Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl Metodyki programowania Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl Wybrane metodyki zwinne TRADYCYJNE: RUP (Rational Unified Process) spiralny, rozbudowany PRINCE2 (Projects In Controlled Environments)

Bardziej szczegółowo

Testowanie kodu gry w języku C++ za pomocą CPPUnit

Testowanie kodu gry w języku C++ za pomocą CPPUnit Testowanie kodu gry w języku C++ za pomocą CPPUnit Wojciech Toman TESTOWANIE KODU GRY W JĘZYKU C++ ZA POMOCĄ CPPUNIT Jest duża różnica między kodem źródłowym, poprawnym kodem źródłowym i dobrym kodem źródłowym

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA

Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA Zakres tematyczny dotyczący podstaw programowania Microsoft Office Excel za pomocą VBA 1 Rozdział 1 Praca z makropoleceniami Opis: W tym rozdziale kursanci przechodzą przez wprowadzenie do programowania

Bardziej szczegółowo

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida

Web frameworks do budowy aplikacji zgodnych z J2EE. Jacek Panachida Web frameworks do budowy aplikacji zgodnych z J2EE Jacek Panachida Cel pracy Analiza wybranych ram projektowych dostępnych dla platformy Java Warunki selekcji napisany z wykorzystaniem języka Java oraz

Bardziej szczegółowo

Efekty uboczne błędów

Efekty uboczne błędów Obsługa wyjątków Efekty uboczne błędów Fragment kodu programu jest bezpieczny (ang. exception-safe) jeżeli błędy, które wystąpią w trakcie przetwarzania tego kodu nie będą powodowały niepożądanych efektów

Bardziej szczegółowo

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji. JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

Galileo - encyklopedia internetowa Plan testów

Galileo - encyklopedia internetowa Plan testów Galileo - encyklopedia internetowa Plan testów Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Matek Sobierajski 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................

Bardziej szczegółowo

Testowanie w procesie Scrum

Testowanie w procesie Scrum Tilo Linz Testowanie w procesie Scrum Przewodnik po zarządzaniu jakością oprogramowania w świecie programowania zwinnego Przekład: Jakub Niedźwiedź APN Promise, Warszawa 2014 v 1 Wprowadzenie........................................1

Bardziej szczegółowo

Ćwiczenie 1. Przygotowanie środowiska JAVA

Ćwiczenie 1. Przygotowanie środowiska JAVA Ćwiczenie 1 Przygotowanie środowiska JAVA 1. Wprowadzenie teoretyczne Instalacja JDK (Java Development Kit) NaleŜy pobrać z java.sun.com środowisko i zainstalować je. Następnie naleŝy skonfigurować środowisko.

Bardziej szczegółowo

Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny

Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny Laboratorium 5 - Projektowanie programów zorientowanych obiektowo. Indywidualny projekt programistyczny mgr inż. Kajetan Kurus 15 kwietnia 2014 1 Dostępne techniki programowania Tworząc program należy

Bardziej szczegółowo

Automatyzacja bez nadmiernego bólu. Piotr Januszek

Automatyzacja bez nadmiernego bólu. Piotr Januszek Automatyzacja bez nadmiernego bólu Piotr Januszek Bolesne początki Generacje frameworków ytest framework Problemy i rozwiązania Czym jest hybris? Firma w Gliwicach Tworzy kompleksową platformę ecommerce

Bardziej szczegółowo

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania prowadzący: dr inż. Krzysztof Bartecki www.k.bartecki.po.opole.pl Proces tworzenia oprogramowania jest zbiorem czynności i

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką? ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest

Bardziej szczegółowo

Programowanie w Ruby

Programowanie w Ruby Programowanie w Ruby Wykład 13 Marcin Młotkowski 16 stycznia 2013 Plan wykładu Testowanie aplikacji w Ruby on Rails Testowanie modeli Testy funkcjonalne: testowanie kontrolerów Testy integracyjne Testowanie

Bardziej szczegółowo

Szablony funkcji i szablony klas

Szablony funkcji i szablony klas Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Kurs: Copyright c 2011 Bogdan Kreczmer Niniejszy dokument

Bardziej szczegółowo

Ogólne określenie wymagań. Ogólny projekt. Budowa systemu. Ocena systemu. Nie. Tak. System poprawny. Wdrożenie. Określenie.

Ogólne określenie wymagań. Ogólny projekt. Budowa systemu. Ocena systemu. Nie. Tak. System poprawny. Wdrożenie. Określenie. Inżynieria I Andrzej Jaszkiewicz Kontakt Andrzej Jaszkiewicz p. 8, CW Berdychowo tel. 66 52 933 ajaszkiewicz@cs.put.poznan.pl Rynek 2008 Świat 304 miliardy $ (451 miliardów 2013F) Bez wytwarzanego na własne

Bardziej szczegółowo

Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski

Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski Sposoby wykrywania i usuwania błędów Tomasz Borzyszkowski Mylić się jest rzeczą ludzką Typy błędów: błędy specyfikacji: źle określone wymagania błędy projektowe: nieodpowiednie struktury danych i algorytmy

Bardziej szczegółowo

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki 2011. Promotor dr inż. Paweł Figat Grzegorz Ruciński Warszawska Wyższa Szkoła Informatyki 2011 Promotor dr inż. Paweł Figat Cel i hipoteza pracy Wprowadzenie do tematu Przedstawienie porównywanych rozwiązań Przedstawienie zalet i wad porównywanych

Bardziej szczegółowo

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji.

Dodatkowo planowane jest przeprowadzenie oceny algorytmów w praktycznym wykorzystaniu przez kilku niezależnych użytkowników ukończonej aplikacji. Spis Treści 1. Wprowadzenie... 2 1.1 Wstęp... 2 1.2 Cel pracy... 2 1.3 Zakres pracy... 2 1.4 Użyte technologie... 2 1.4.1 Unity 3D... 3 2. Sztuczna inteligencja w grach komputerowych... 4 2.1 Zadanie sztucznej

Bardziej szczegółowo

Programowanie ekstremalne

Programowanie ekstremalne Programowanie ekstremalne Bartłomiej Zieliński Spis treści 1 Wstęp 2 2 Programowanie ekstremalne w praktyce 3 2.1 Ogólne zasady........................... 3 3 Zalety i wady programowania ekstremalnego

Bardziej szczegółowo

Metodyki zwinne wytwarzania oprogramowania

Metodyki zwinne wytwarzania oprogramowania Metodyki zwinne wytwarzania oprogramowania Wykład 7 Marcin Młotkowski 25 listopada 2014 Plan wykładu 1 Zasada pojedynczej odpowiedzialności 2 Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania

Bardziej szczegółowo

Testowanie oprogramowania Dr inż. Andrzej Grosser

Testowanie oprogramowania Dr inż. Andrzej Grosser Testowanie oprogramowania Dr inż. Andrzej Grosser Literatura Andy Hunt, Dave Thomas JUnit. Pragmatyczne testy jednostkowe w Javie Helion 2006 Srinivasan Desikan; Gopalaswamy Ramesh Software Testing: Principles

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Zagadnienia. Inżynieria Oprogramowania

Zagadnienia. Inżynieria Oprogramowania Zagadnienia Co to jest extreme Programming (XP) Czym charakteryzują się tzw. lekkie metodyki zarządzania procesem produkcji oprogramowania Reguły i praktyki XP Dlaczego i kiedy można a w jakich przypadkach

Bardziej szczegółowo

Sukces vs porażka. Sukces. Porażka

Sukces vs porażka. Sukces. Porażka Wstęp Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID 02. ID to skrót od idiotyczny drobiazg,

Bardziej szczegółowo

Testowanie aplikacji. Kurs języka Ruby

Testowanie aplikacji. Kurs języka Ruby Testowanie aplikacji Kurs języka Ruby Rodzaje testów Testy jednostkowe Testy funkcjonalne Testy integracyjne Testy jednostkowe (unit tests) Testy sprawdzające pojedyncze funkcjonalności (metodę, funkcję

Bardziej szczegółowo

Multimedia JAVA. Historia

Multimedia JAVA. Historia Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania

Bardziej szczegółowo

Projektowanie oprogramowania

Projektowanie oprogramowania Wrocław, 27.09.2010 1. Warunki wstępne Projektowanie oprogramowania Warunkiem uczestnictwa w zajęciach jest zaliczenie przedmiotu: Podstawy inżynierii oprogramowania (ćwiczenia) Zajęcia składają się z

Bardziej szczegółowo

Visual VM, Java Management extension i inne ciekawostki

Visual VM, Java Management extension i inne ciekawostki Visual VM, Java Management extension i inne ciekawostki Adam Dudczak adudczak (at) gmail.com Poznań Java User Group 6 października 2008 Plan prezentacji 1 Wprowadzenie do VisualVM 2 VisualVm jako klient

Bardziej szczegółowo

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r.

Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Stworzenie platformy internetowej na potrzeby projektu. 1 Wykonanie portalu internetowego na potrzeby e-usługi, obejmującego

Bardziej szczegółowo

Środowisko NetBeans. Paweł Boguszewski

Środowisko NetBeans. Paweł Boguszewski Środowisko NetBeans Paweł Boguszewski Plan prezentacji Wprowadzenie Historia Funkcjonalność Kierunek Rozwoju Wtyczki Platforma NetBeans Podsumowanie Wprowadzenie NetBeans.org projekt OpenSource zapoczątkowany

Bardziej szczegółowo

edycja 1 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012

edycja 1 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012 Wrocław, 18.05.2015 Program kształcenia i plan studiów podyplomowych: Android i ios nowoczesne aplikacje mobilne edycja 1 opracowany zgodnie z Zarządzeniami Wewnętrznymi PWr. nr 14/2012 i 15/2012 i 34/2012

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w

Bardziej szczegółowo

Automatyczne generowanie kodu. Marek.Berkan@e-point.pl. 4Developers, 26 marca 2010

Automatyczne generowanie kodu. Marek.Berkan@e-point.pl. 4Developers, 26 marca 2010 4Developers, 26 marca 2010 Zakres wykładu O czym zamierzam opowiedzieć: Przyspieszenie tworzenia aplikacji Ułatwienie utrzymania aplikacji Budowanie kontraktów pomiędzy developerami a innymi uczestnikami

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Testujemy dedykowanymi zasobami (ang. agile testers)

Testujemy dedykowanymi zasobami (ang. agile testers) Testujemy dedykowanymi zasobami (ang. agile testers) - wspólne standupy; - ten sam manager; - duży przepływ informacji; - po pewnym czasie zanika asertywność; - pojawia się tendencja do nie zgłaszania

Bardziej szczegółowo

Zastosowania aplikacji B2B dostępnych na rynku zalety aplikacji online

Zastosowania aplikacji B2B dostępnych na rynku zalety aplikacji online 2012 Zastosowania aplikacji B2B dostępnych na rynku zalety aplikacji online Sławomir Frąckowiak Wdrożenie systemu B2B Lublin, 25 października 2012 Aplikacje B2B do czego? Realizacja najważniejszych procesów

Bardziej szczegółowo

Programowanie w Javie

Programowanie w Javie Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student

Bardziej szczegółowo

Przypadki bez przypadków. Jak dobierać scenariusze testowe.

Przypadki bez przypadków. Jak dobierać scenariusze testowe. Przypadki bez przypadków. Jak dobierać scenariusze testowe. Konferencja SQAM 2008 Warszawa, 29. kwietnia Wojciech Pająk 29 kwietnia 2008 Warszawa Zagadnienia prezentacji 1. Wprowadzenie 2. Definicje przypadków

Bardziej szczegółowo

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Geoff Evelyn Przekład: Natalia Chounlamany APN Promise Warszawa 2011 Spis treści Podziękowania......................................................

Bardziej szczegółowo

Continuous Integration i jakość kodu. Michał Prajs

Continuous Integration i jakość kodu. Michał Prajs Continuous Integration i jakość kodu Michał Prajs Agenda Michał Prajs SMT Software Prowadzący Continuous Integration Jenkins CI Statyczna analiza kodu Checkstyle Pokrycie kodu testami jednostkowymi Cobertura

Bardziej szczegółowo

Projektowanie oprogramowania. Termin zajęć: poniedziałek, 18.00-19.45. a podstawie materiału ze strony. http://gromit.iiar.pwr.wroc.

Projektowanie oprogramowania. Termin zajęć: poniedziałek, 18.00-19.45. a podstawie materiału ze strony. http://gromit.iiar.pwr.wroc. Projektowanie oprogramowania Termin zajęć: poniedziałek, 18.00-19.45 a podstawie materiału ze strony http://gromit.iiar.pwr.wroc.pl/p_inf/ Przebieg realizacji projektu (tabela 1) Nr tygo dnia Spotkanie

Bardziej szczegółowo

Framework testowy dla języka Java

Framework testowy dla języka Java Wydział Informatyki Katedra Inżynierii Oprogramowania Inżynieria Oprogramowania i Baz Danych Krystian Siuda 3572 Framework testowy dla języka Java Praca magisterska Napisana pod kierunkiem dr inż. Mariusza

Bardziej szczegółowo

Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT

Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT Platformy programistyczne:.net i Java L ABORATORIUM 7,8: HACKATHON - JTTT O co chodzi? - Przypomnienie Hackathon - http://en.wikipedia.org/wiki/hackathon A hackathon is an event in which computer programmers

Bardziej szczegółowo

Wprowadzenie do Algo tradingu czyli zaawansowane funkcje platformy MT4. Robert Gawron, 13.10.2015, Warszawa

Wprowadzenie do Algo tradingu czyli zaawansowane funkcje platformy MT4. Robert Gawron, 13.10.2015, Warszawa Wprowadzenie do Algo tradingu czyli zaawansowane funkcje platformy MT4. Robert Gawron, 13.10.2015, Warszawa Agenda 1. Co to jest trading algorytmiczny. 2. Co to jest MQL4. 3. Rodzaje oferowanych programów

Bardziej szczegółowo

Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut.

Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut. Konstruktory Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut. Rozpatrzmy przykład przedstawiający klasę Prostokat: class

Bardziej szczegółowo

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7 I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego

Bardziej szczegółowo

Automaty do zadań specjalnych. Olga Maciaszek-Sharma, Artur Kotow Wersja 1, 13.05.2014

Automaty do zadań specjalnych. Olga Maciaszek-Sharma, Artur Kotow Wersja 1, 13.05.2014 Automaty do zadań specjalnych Olga Maciaszek-Sharma, Artur Kotow Wersja 1, 13.05.2014 Agenda Kilka pytań do publiczności Po co się męczyć? Studium przypadku Olympus Wprowadzenie Opis rozwiązania Wnioski

Bardziej szczegółowo