Materiał powarsztatowy dla praktykantów testowania

Materiał powarsztatowy dla praktykantów testowania
Podczas praktyk w naszej firmie powstaje dużo materiału, który dokumentuje nasze warsztaty z początkującymi testerami. Poniżej prezentujemy wybrane fragmenty z ostatnich warsztatów prowadzonych przez Radka Smilgin.

Chcesz wykorzystać ten materiał do nauki testowania? Przeczytaj zadanie i spróbuj je wykonać samodzielnie. Następnie sprawdź wyniki naszych praktykantów.

Zadanie 1.

Znajdź narzędzie do prowadzenia chatu lub też umożliwiające tworzenie dokumentu w czasie rzeczywistym, dostępne przez przeglądarkę dla wszystkich uczestników, bez konieczoności logowania się (15 minut).

Wyniki: Udało się wypracować tylko jedną poprawną odpowiedź wraz z uzasadnieniem.

[Praktykant 1] Narzędzie: http://collabedit.comSpotkałem się z tym narzędziem na studiach podczas grupowego projektu (program konsolowy w Javie). Działało bez zarzutów. Oprócz zwykłej komunikacji tekstowej można wspólnie tworzyć kod w wielu językach programowania.

 

Zadanie 2.

Zdefiniuj testowanie oprogramowania (15 minut).

Wyniki: Udało się w większości znaleźć jakieś definicje i przez dyskusję sprowadzić je na właściwe tory.

[Praktykant 2]

Testowanie oprogramowanie jest ściśle związane z procesem wytwarzania oprogramowania komputerowego.
Testowanie ma na celu weryfikację oraz walidację oprogramowania.
Weryfikacja - sprawdzeniem poprawności i zgodności implementacji oprogramowania z założeniami spisanymi w formie dokumentacji
Walidacja  - sprawdzeniem poprawności i zgodności implementacji oprogramowania z założeniami zlecającego wytworzenie oprogramowania
Testowanie może być wdrożone na każdym etapie projektowania oprogramowania, ale czym wcześniej zostanie rozpoczęte tym lepiej (najlepiej już na etapie analiza wymagań).


[Praktykant 3]

Definicje testowania oprogramowania:
- definicja 1 - proces uruchomienia programu lub aplikacji celem znalezienia defektu (wciąż niewystarczająca, potoczna)
- definicja 2 - proces walidacji lub weryfikacji tego, czy produkt spełnia wymogi biznesowe i techniczne, dla których został zaprojektowany, pracuje, w sposób jaki oczekujemy, może być zaimplementowany w taki sam sposób (Walidacja - czy zbudowaliśmy właściwy system; Weryfikacja - czy zbudowaliśmy system właściwie
- definicja 3 - zbiór połączonych procesów mających na celu zbadanie, ewaluację (ocenę) oraz zapewnienie jakości i kompletności oprogramowania tj. zgodność produktu z wymogami biznesowymi, prawnymi, biznesowymi, technicznymi, funkcjonalnymi, niefunkcjonalnymi.

 

Zadanie 3.

Określ różnicę między testowaniem oprogramowania i zapewnieniem jakości (10 minut).

Wyniki: Przez wspólną pracę udało się wypracować następujący opis.

Na pewno Quality Assurance nie jest tożsame z testowaniem oprogramowania. W najlepszym wypadku proces testowy może być zaliczany jako część procesu Quality Assurance. Głównym celem QA jest ograniczenie liczby błędów, w przeciwieństwie do testowania oprogramowania, którego głównym zadaniem jest detekcja błędów – weryfikowanie jakości. QA wykorzystuje wiele narzędzi w celach prewencyjnych, między innymi zajmuje się organizacją i kontrolą procesu wytwarzania oprogramowania, buduje środowiska oraz narzędzia wspierające testowanie i kontrole jakości, poszukuje i wprowadza „dobre praktyki” by zwiększać efektywność i poprawiać jakość i dopiero jako jeden z wielu elementów pojawia się weryfikacja jakości produktu, która może zostać przeprowadzona poprzez testowanie oprogramowania.

 

Zadanie 4.

Określenie celów testowania oprogramowania i próba ich osiągnięcia (10 minut).

Wyniki: Praktykanci określili jako cel testowania "znajdywanie defektów". W rozwinięciu mieli na podstawie analizy strony http://collabedit.com/ wskazać i zaraportować jeden defekt. 

Środowisko: Chrome, Wersja 46.0.2490.86 m
Autor: Praktykant 3

  1. Wejdź na stronę collabedit.com.
  2. Utwórz nowy dokument wybierając opcję "Create a new document".
  3. Następnie kliknij na pole z nazwą dokumentu, które znajduje się w górnym lewym rogu koło loga narzędzia.
  4. Zmień nazwę dokumentu na inną, dowolną.
  5. Zatwierdź, klikając ok
  6. Następnie ponownie kliknij w nazwę dokumentu.
  7. Nie zmieniając nazwy, kliknij anuluj.


Rezultat aktualny: powrót do nazwy sprzed zmiany.
Rezultat oczekiwany: pozostawienie aktualnej nazwy dokumentu.
Priorytet: trywialny.

Przy okazji udało się "wypracować" złe raporty defektów.

Przykład 1 - nie wiadomo o co chodzi.

Miejsce: http://collabedit.com/
Opis - przy pojawieniu się wyskakującego okna dialogowego (...) i przy próbie powiększenia strony przy pomocy (Ctrl +) ...

Stopień - trywialny.
Środowisko - Mozilla Firefox (Latest)
Screen: problem.jpg

 

Przykład 2 - to nie jest defekt.

Kroki wywołania:

  1. Wejdź na stronę http://collabedit.com/ i poprzez opcje create new document stwórz nowy dokument. Jego nazwa generuje się automatycznie i powstaje url dla danego dokumentu
  2. Zmień nazwę dokumentu w ramce (lewy górny róg)
  3. Wpisz adres strony (url) ze zmienioną nazwą


Aktualny rezultat: Strona nie istnieje. Pomimo, że wpisaliśmy nową nazwę dokument jest rozpoznawany tylko po pierwszej (automatycznie wygenerowanej) nazwie.

 

Zadanie 5

Sporządź raport z analizy jakościowej oprogramowania Collabedit. Co powinien zawierać dobry raport? (30 minut)


Wyniki: Raport wypracowany wspólnie

Tytuł: Raport z analizy jakościowej oprogramowania Collabedit.
Cel: ocena jakościowa dostarczonego oprogramowania przez użytkowników końcowych.

Elementy oceny jakościowej:

1. Funkcja - text editor:
a) edytor umożliwia edycję kodów źródłowych - działa
b) obsługuje kilkanaście języków programowania, w tym: C, C++ , Jave, JavaScript i wiele innych -  działa
c) podświetlenie składni - działa

2. Funkcja – chat:
a) nie wymaga logowania- działa

3. Funkcja - document history:
a) wyświetla całą historię dokumentu - działa
b) umożliwia zapisanie dokumentu na komputerze - działa
c) pozwala na edycję dokumentu - działa

4. Funkcja - syntax highlighting for programming languages:
a) zawiera wszystkie najważniejsze języki- sprawdzono


5. Sugerowane zmiany:
a) użytkownicy zalecają wprowadzenie możliwości dołączania załączników np. graficznych do prowadzonej rozmowy, dzięki czemu pewne dyskutowane problemy można by wyjaśnić o wiele łatwiej. Skoro jedną z funkcjonalności (http://collabedit.com/articles/TeachProgramming) jest nauka programowania taka opcja może okazać się użyteczna,
b) użytkownicy zalecają, aby w głównym oknie tekstowym pojawiała się informacja dotycząca autora wpisywanych informacji. Skoro Collabedit ma być stosowany do pracy grupowej, każdy wpis powinien mieć przypisanego autora,
c) użytkownicy zalecają wprowadzenie możliwości prowadzenia rozmowy (chat) tylko z jednym lub wybranymi osobami uczestniczącymi w spotkaniu,
d) użytkownicy zalecają wprowadzenie informacji dotyczących czasu pojawienia się wpisu w chacie, co powinno ułatwić powrót do wybranych wypowiedzi,
e) użytkownicy zalecają wprowadzenie osobnego okna z informacjami dotyczącymi zmiany historii dokumentu, a nie powiązania go z chatem. Utrudnia to możliwość śledzenia zmian w programie,
f) użytkownicy zalecają wprowadzenie dodatkowych języków m.in. języka asemblera,
g) użytkownicy zalecają dopracowanie layoutu chatu, który ich zdaniem jest mało czytelny przy większej liczbie.


Dziękujemy praktykantom za zaangażowanie i wolę podzielenia się zarówno dobrymi, jak i złymi wzorcami.

 

To powinno Cię zainteresować