Scrum w testowaniu oprogramowania
Scrum w testowaniu oprogramowania to metodologia tworzenia złożonych aplikacji. Zapewnia łatwe rozwiązania do wykonywania skomplikowanych zadań. Scrum pomaga zespołowi programistycznemu skupić się na wszystkich aspektach tworzenia oprogramowania, takich jak jakość, wydajność, użyteczność i tak dalej. Zapewnia przejrzystość, kontrolę i adaptację podczas tworzenia oprogramowania, aby uniknąć złożoności.
Testowanie Scrum
Scrum Testing to testowanie przeprowadzane w metodologii scrum w celu sprawdzenia, czy wymagania aplikacji są spełnione. Obejmuje sprawdzenie parametrów niefunkcjonalnych, takich jak bezpieczeństwo, użyteczność, wydajność itp. W procesie nie ma aktywnej roli testera, więc jest to zwykle wykonywane przez programistów za pomocą testu jednostkowego. Czasami, w zależności od charakteru i złożoności projektu, potrzebne są dedykowane zespoły testowe.
W tym samouczku nauczysz się:
- Co to jest Scrum?
- Kluczowe cechy metodologii Scrum
- Role w Scrumie
- Artefakty Scruma
- Ceremonie (procesy) w Scrumie
- Rola testera w Scrumie
- Testowanie działań w Scrumie
- Raportowanie z testów
Kluczowe cechy metodologii Scrum
Oto kluczowe cechy Scruma:
- Scrum ma krótki, ustalony harmonogram cykli wydawniczych z regulowanym zakresem zwanym sprintami, aby sprostać szybko zmieniającym się potrzebom programistycznym. Każde wydanie może mieć wiele sprintów. Każdy projekt Scrum może mieć wiele cykli wydań.
- Powtarzająca się sekwencja spotkań, wydarzeń i kamieni milowych
- Praktyka testowania i wdrażania nowych wymagań, zwanych historiami , aby upewnić się, że część pracy jest gotowa po każdym sprincie
Scrum opiera się na następujących 3 filarach:
Spójrzmy na jeden po drugim
1. Role w Scrumie
Istnieją trzy główne role w testowaniu Scrum - właściciel produktu, Scrum Master i zespół deweloperski. Przeanalizujmy je szczegółowo
Właściciel Produktu |
Scrum Master |
Drużyna |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. Artefakty Scruma
Proces scrum obejmuje
- Historie użytkowników: To krótkie wyjaśnienie funkcjonalności testowanego systemu. Przykład dla ubezpieczyciela: „Składkę można opłacić za pomocą systemu online”.
- Backlog produktu: jest to zbiór historii użytkowników przechwyconych dla produktu scrum. Właściciel produktu przygotowuje i prowadzi rejestr produktu. Jest on traktowany priorytetowo przez właściciela produktu i każdy może go dodać za zgodą właściciela produktu.
- Release Backlog: Wydanie to przedział czasu, w którym liczba iteracji jest zakończona. Właściciel produktu współpracuje z mistrzem scrum, aby zdecydować, które historie powinny zostać wydane. Historie w dzienniku wersji mają zostać uzupełnione w wydaniu.
- Sprinty: Jest to ustalony okres czasu na wypełnienie historyjek użytkownika, o którym decyduje właściciel produktu i zespół programistów, zwykle 2-4 tygodnie.
- Sprint Backlog: Jest to zestaw historyjek użytkownika do uzupełnienia w sprincie. Podczas backlogu sprintu praca nigdy nie jest przydzielana, a zespół samodzielnie rejestruje się do pracy. Jest on własnością zespołu i jest przez niego zarządzany, a szacunkowa pozostała praca jest codziennie aktualizowana. Jest to lista zadań do wykonania w Sprincie
- Lista bloków: Jest to lista bloków i niezrealizowanych decyzji będących własnością Scrum Mastera i aktualizowana codziennie
- Wykres wypalania : Wykres wypalania przedstawia ogólny postęp prac w toku i pracy zakończonej w trakcie procesu. Przedstawia w formie wykresu historie i funkcje, które nie zostały ukończone
3. Ceremonie (procesy) w Scrumie
- Planowanie sprintu : Sprint rozpoczyna się od zaimportowania przez zespół historii z rejestru wersji do rejestru sprintu; jest hostowany przez Scruma Mastera. Testerzy oceniają wysiłek, aby przetestować różne historie w Backlogu Sprintu.
- Codzienny Scrum: jest prowadzony przez Scrum Mastera, trwa około 15 minut. Podczas Daily Scrum członkowie omówią pracę wykonaną poprzedniego dnia, planowaną pracę na następny dzień oraz problemy napotkane podczas sprintu. Podczas codziennych spotkań stojących śledzone są postępy zespołu.
- Przegląd / retrospektywa sprintu: jest również prowadzony przez scrum mastera, trwa około 2-4 godzin i omawia, co zespół osiągnął w ostatnim sprincie i jakie lekcje zostały wyciągnięte.
Rola testera w Scrumie
W procesie Scrum nie ma aktywnej roli Testera . Zwykle testy są przeprowadzane przez programistę za pomocą testu jednostkowego. Podczas gdy właściciel produktu jest również często zaangażowany w proces testowania podczas każdego sprintu. Niektóre projekty Scrum mają dedykowane zespoły testowe w zależności od charakteru i złożoności projektu .
Następne pytanie brzmi: co tester robi w scrumie? Następująca notatka odpowie
Testowanie działań w Scrumie
Testerzy wykonują następujące czynności na różnych etapach Scrum-
Planowanie sprintu
- Podczas planowania sprintu tester powinien wybrać historyjkę użytkownika z rejestru produktu, który powinien zostać przetestowany.
- Jako tester powinien zdecydować, ile godzin (oszacowanie wysiłku) powinno zająć zakończenie testów dla każdej z wybranych historyjek użytkownika.
- Jako tester musi wiedzieć, jakie są cele sprinterskie.
- Jako tester weź udział w procesie ustalania priorytetów
Sprint
- Wspieraj programistów w testowaniu jednostkowym
- Po zakończeniu przetestuj historię użytkownika. Wykonywanie testów odbywa się w laboratorium, w którym zarówno tester, jak i programista pracują ramię w ramię. Defekty są rejestrowane w narzędziu do zarządzania defektami, które są codziennie śledzone. Defekty można zgłaszać i analizować podczas spotkania scrumowego. Defekty są ponownie testowane, gdy tylko zostaną rozwiązane i wdrożone do testów
- Jako tester uczestniczy we wszystkich codziennych spotkaniach, aby zabrać głos
- Jako tester może przynieść dowolny przedmiot z rejestru, którego nie można ukończyć w bieżącym sprincie i przenieść do następnego sprintu
- Tester jest odpowiedzialny za tworzenie skryptów automatyzacji. Planuje testy automatyki z systemem Continuous Integration (CI). Automatyzacja zyskuje na znaczeniu ze względu na krótkie terminy dostaw. Automatyzację testów można osiągnąć, wykorzystując różne narzędzia open source lub płatne dostępne na rynku. Okazuje się to skuteczne w zapewnieniu, że wszystko, co musi zostać przetestowane, zostało uwzględnione. Wystarczające pokrycie testu można osiągnąć dzięki bliskiej komunikacji z zespołem.
- Przejrzyj wyniki automatyzacji CI i wyślij raporty do interesariuszy
- Wykonywanie testów niefunkcjonalnych dla zatwierdzonych historyjek użytkownika
- Koordynuj z klientem i właścicielem produktu, aby zdefiniować kryteria akceptacji dla testów akceptacyjnych
- Pod koniec sprintu tester w niektórych przypadkach przeprowadza również testy akceptacyjne (UAT) i potwierdza kompletność testów dla bieżącego sprintu
Retrospektywa sprintu
- Jako tester dowie się, co poszło nie tak, a co dobrze w bieżącym sprincie
- Jako tester identyfikuje wyciągnięte wnioski i najlepsze praktyki
Raportowanie z testów
Raportowanie metryk testów Scrum zapewnia przejrzystość i wgląd w projekt dla interesariuszy. Raportowane wskaźniki pozwalają zespołowi analizować postępy i planować przyszłą strategię ulepszenia produktu. Istnieją dwie metryki, które są często używane do raportowania.
Wykres spalenia: Każdego dnia Scrum Master rejestruje szacowaną pozostałą pracę do sprintu. To nic innego jak Wykres Wypalenia. Jest aktualizowana codziennie.
Wykres postępu zapewnia szybki przegląd postępów projektu, ten wykres zawiera informacje, takie jak całkowita ilość pracy w projekcie, która musi zostać ukończona, ilość pracy wykonanej podczas każdego sprintu i tak dalej.
Wykres historii prędkości: Wykres historii prędkości przewiduje prędkość zespołu osiągniętą w każdym sprincie. Jest to wykres słupkowy, który przedstawia zmiany wyników zespołu w czasie.
Dodatkowe miary, które mogą być przydatne, to spalanie harmonogramu, wykorzystanie budżetu, procent ukończenia tematu, ukończone historie - pozostałe historie i tak dalej.
Czy masz jakieś wskazówki lub doświadczenia, którymi chcesz się podzielić na temat testowania Scrum? Zostaw komentarz poniżej-