Metodyki Zwinne Wytwarzania Oprogramowania Wykład 5

Metodyki Zwinne Wytwarzania Oprogramowania Wykład 5

Metodyki zwinne wytwarzania oprogramowania Wykład 5 Marcin Młotkowski 9 listopada 2016 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Plan wykładu 1 Testowanie akceptacyjne FitNesse Testowanie graficznego interfejsu użytkownika (GUI) 2 Zapewnienie jakości kodu Code review Ciągła integracja Czysta inżynieria oprogramowania Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 2 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Co to jest fork FIT: Framework for Integrated Test portal w stylu Wiki Skąd można pobrać: www.fitnesse.org Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 3 / 25 Łatwy w użyciu Rodzaj serwisu WWW w stylu wiki, który może być ”programowany” również przez klienta (użytkownika) niebędącego programistą Znaczniki Prosty język znaczników umożliwia łatwe tworzenie testów. Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Istotne cechy Przeznaczenie Testy warstwy zaraz ”za interfejsem graficznym”. Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 4 / 25 Znaczniki Prosty język znaczników umożliwia łatwe tworzenie testów. Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Istotne cechy Przeznaczenie Testy warstwy zaraz ”za interfejsem graficznym”. Łatwy w użyciu Rodzaj serwisu WWW w stylu wiki, który może być ”programowany” również przez klienta (użytkownika) niebędącego programistą Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 4 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Istotne cechy Przeznaczenie Testy warstwy zaraz ”za interfejsem graficznym”. Łatwy w użyciu Rodzaj serwisu WWW w stylu wiki, który może być ”programowany” również przez klienta (użytkownika) niebędącego programistą Znaczniki Prosty język znaczników umożliwia łatwe tworzenie testów. Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 4 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Przykład Przeliczanie temperatur Przeliczanie stopni Celsiusza na Fahrenheita Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 5 / 25 Uzupełnienie !define TEST_SYSTEM {slim} !path /home/marcinm/fitnesse/FahrenheitTest Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Przykład testu |Fahrenheit| |Celsius|temp?| |0 | 32.0 | |100 | 212.0 | |40 | 104.0 | Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 6 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Przykład testu Uzupełnienie !define TEST_SYSTEM {slim} !path /home/marcinm/fitnesse/FahrenheitTest |Fahrenheit| |Celsius|temp?| |0 | 32.0 | |100 | 212.0 | |40 | 104.0 | Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 6 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Implementacja funkcjonalności Przypomnienie |Fahrenheit| |Celsius|temp?| |0 | 32.0 | |100 | 212.0 | |40 | 104.0 | public class Fahrenheit { private double cels; public void setCelsius(double c) { this.cels = c; } public double temp() { return 32 + (9/5)*this.cels; } } Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 7 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Rodzaje testów Decision table: tabela argumentów i poprawnych wartości Query table: zapytania w stylu zapytań do bazy danych Script table: tworzenie scenariuszy Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 8 / 25 HtmlFixture Testy akceptacyjne dla serwisów webowych. Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Dodatkowe wtyczki Fit JfcFixtures Testy akceptacyjne dla programów Java Swing Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 9 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Dodatkowe wtyczki Fit JfcFixtures Testy akceptacyjne dla programów Java Swing HtmlFixture Testy akceptacyjne dla serwisów webowych. Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 9 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Rodzaje GUI Testowanie interfejsów lokalnych Testowanie serwisów WWW Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 10 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Selenium wtyczka do Firefoxa może zapisywać scenariusze (”wyklikane”przez użytkownika) i je odtwarzać scenariusze mogą być zapisywane w Ruby, Python, .NET, Java, PHP Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 11 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) CubicTest Graficzna wtyczka do Eclipse wspierająca tworzenie testów Selenium Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 12 / 25 przede wszystkim dla systemów Windows są wersje Mono/Linux AutoKey: wzorowany na AutoHotkey, na Linux/X11 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) AutoHotKey Cele programu Symulowanie użytkownika poprzez ”udawanie” naciskania klawiszy czy klikania myszką Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 13 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) AutoHotKey Cele programu Symulowanie użytkownika poprzez ”udawanie” naciskania klawiszy czy klikania myszką przede wszystkim dla systemów Windows są wersje Mono/Linux AutoKey: wzorowany na AutoHotkey, na Linux/X11 Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 13 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) AutoHotKey Przykład skryptu WinGet, wowid, list, World of Warcraft ;2locks 1:: KeyWait, 1, D ControlSend,, 1 , ahk_id %wowid1% ControlSend,, h , ahk_id %wowid2% ; assist macro /target Party1 /assist Sleep, 500 ControlSend,, 1 , ahk_id %wowid2% Return Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 14 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Xnee Dedykowany system do X11, z możliwością zapisywania o odtwarzania akcji użytkownika (naciśnięcia klawiszy, ruchy myszki). Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 15 / 25 Cechy możliwość zapisywania i odtwarzania akcji użytkownika programowanie akcji: Python Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) System dedykowany: Linux Desktop Testing Project Testowanie programów graficznych: Gnome KDE Java (SWING) Firefox Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 16 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) System dedykowany: Linux Desktop Testing Project Testowanie programów graficznych: Gnome KDE Java (SWING) Firefox Cechy możliwość zapisywania i odtwarzania akcji użytkownika programowanie akcji: Python Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 16 / 25 Testowanie akceptacyjne FitNesse Zapewnienie jakości kodu Testowanie graficznego interfejsu użytkownika (GUI) Test Automation FX Środowisko do Visual Studio. Cechy: możliwość zapisywania akcji użytkownika implementacja własnych skryptów w C# Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 17 / 25 Code review Testowanie akceptacyjne Ciągła integracja Zapewnienie jakości kodu Czysta inżynieria oprogramowania Plan wykładu 1 Testowanie akceptacyjne FitNesse Testowanie graficznego interfejsu użytkownika (GUI) 2 Zapewnienie jakości kodu Code review Ciągła integracja Czysta inżynieria oprogramowania Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 18 / 25 Code review Testowanie akceptacyjne Ciągła integracja Zapewnienie jakości kodu Czysta inżynieria oprogramowania Inspekcja kodu Systematyczne przeglądanie kodu w celu znalezienia błędów. Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 19 / 25 wyznaczenie osoby odpowiedzialnej za przeglądy; wykorzystanie oprogramowania do wyszukiwania błędów; organizowanie spotkań. Code review Testowanie akceptacyjne Ciągła integracja Zapewnienie jakości kodu Czysta inżynieria oprogramowania Sposoby code review podczas programowania w parach; Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 20 / 25 wykorzystanie oprogramowania do wyszukiwania błędów; organizowanie spotkań. Code review Testowanie akceptacyjne Ciągła integracja Zapewnienie jakości kodu Czysta inżynieria oprogramowania Sposoby code review podczas programowania w parach; wyznaczenie osoby odpowiedzialnej za przeglądy; Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 20 / 25 organizowanie spotkań. Code review Testowanie akceptacyjne Ciągła integracja Zapewnienie jakości kodu Czysta inżynieria oprogramowania Sposoby code review podczas programowania w parach; wyznaczenie osoby odpowiedzialnej za przeglądy; wykorzystanie oprogramowania do wyszukiwania błędów; Marcin Młotkowski Metodyki zwinne wytwarzania oprogramowania 20 / 25 Code review

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    38 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us