Tag

Testowanie oprogramowania

Testowanie oprogramowania to proces związany z wytwarzaniem oprogramowania. Jest to jeden z procesów zapewnienia jakości oprogramowania.

Testowanie ma na celu weryfikację oraz walidację oprogramowania. Weryfikacja oprogramowania pozwala skontrolować, czy wytwarzane oprogramowanie jest zgodne ze specyfikacją. Walidacja sprawdza, czy oprogramowanie jest zgodne z oczekiwaniami użytkownika.

Testowanie oprogramowania może być wdrożone w dowolnym momencie wytwarzania oprogramowania (w zależności od stosowanej metody). W podejściu kaskadowym zgodnym z modelem V wysiłek zespołu testerskiego zaczyna się wraz z definicją wymagań i jest kontynuowany po zaimplementowaniu zdefiniowanych wymagań.

Nowsze metody wytwarzania oprogramowania (np. Agile) rozkładają wysiłek testerski równomiernie na poszczególne iteracje i skupiają się na testach jednostkowych oraz automatyzacji weryfikacji wykonywanych przez członków zespołu.

Testowanie nie jest w stanie wykryć wszystkich defektów oprogramowania, jednak może dostarczyć informacji o jego zgodności z wymaganiami klienta, czy też z jego oczekiwaniami. Trzeba pamiętać, że testowanie nie sprawdza tego oprogramowania pod kątem wszelkich możliwych warunków początkowych, lecz jedynie w wyselekcjonowanych warunkach.

Jak wybrać testy do automatyzacji?

W obliczu zwiększającej się roli automatyzacji znaczny odsetek przedsiębiorstw stara się przekształcić dotychczas manualne testowanie na automatyczne, by zwiększyć produktywność i stopień pokrycia testowego. Jednym z kluczowych kroków, jakie podejmują, jest wybranie odpowiednich przypadków testowych i rzetelne określenie zwrotu z inwestycji (ROI; Return On Investment). Zanim więc przystąpisz […]

Dlaczego powinniśmy zacząć myśleć inaczej o testowaniu oprogramowania?

Funkcjonując w branży testowania oprogramowania i szerzej w IT, nietrudno natknąć się na licznie występujące rozważania na temat przyszłości testowania; czy to manualnego, czy zautomatyzowanego, czy to przyszłości pod znakiem sztucznej inteligencji, czy też machine learningu. Mnogość tekstów na ten temat jest naprawdę oszałamiająca. My zaczęliśmy zastanawiać się, co jest przyczyną ilości tego […]

Problemy z automatyzacją testów
Część II

Tydzień temu mieliście okazję przeczytać pierwszą część tekstu o problemach z automatyzacją testów. W tym tygodniu kontynuujemy ten wątek. Opisaliśmy trzy kolejne trudności, które mogą pojawić się przy wdrażaniu automatów do projektu. Współpraca i komunikacja Dobra współpraca i komunikacja w zespole to wyzwanie nie tylko w przypadku zespołów wdrażających testy automatyczne, […]

Problemy z automatyzacją testów
Część I

Automatyzacja testów to temat bardzo aktualny i na czasie, zwłaszcza w środowiskach wykorzystujących dobrodziejstwa metodyk Agile czy DevOps. Automatyka sprawdza się doskonale w wykonywaniu testów dymnych lub testów regresji. Okazuje się także pomocna w opracowywaniu danych testowych i wykonywaniu założeń testowych, w angażowaniu dużej ilości danych lub w przypadku danych […]

Charakterystyka oprogramowania

Model jakościowy     W swojej książce „Zawód tester” Radosław Smilgin podaje trzy metody charakteryzowania oprogramowania; wg ISO/IEC 25010, The Test Eye oraz wg Jamesa Bacha. Oczywiście metod kategoryzowania i opisywania oprogramowania jest o wiele więcej, ale nie chodzi o to przecież, by wymieniać je wszystkie. W tym poście skupimy się na tej zaproponowanej […]

Jak uniknąć etykiety „invalid bug”

Tym z was, którzy postawili już pierwsze kroki w świecie testerskim i tropią defekty oprogramowania zawodowo, z pewnością przydarzyła się sytuacja, w której wykryty bug wrócił z etykietą invalid (nieważny/nieprawidłowy). W takiej sytuacji system działa według określonych specyfikacji mimo zaraportowanego błędu. Jeśli chcecie dowiedzieć się więcej na temat defektów, to odsyłamy was […]

Smoke testing i Sanity testing

W tym tygodniu wzięliśmy pod lupę Smoke testing (zwane też testami dymnymi) i Sanity testing. Nazwy brzmią interesująco i z pewnością intrygują. Co to za testy, do czego się ich używa, jakie mają mocne i słabe strony i czym się od siebie różnią? Jeśli szukacie odpowiedzi na któreś z tych pytań, zapraszamy do zapoznania […]

Testowanie w Agile
Część II

Cztery metody testowania w Agile   Dwa tygodnie temu przedstawiliśmy wam metodykę Agile. Omówiliśmy jej zalety, wskazaliśmy potencjalne trudności i opisaliśmy dwie najbardziej popularne metody wykorzystujące zwinne podejście: Scrum i Kanban. W tym poście zapraszamy do zapoznania się z czterema najbardziej popularnymi metodami testowania oprogramowania w zwinnych […]

Testowanie w Agile
Część I

W ciągu ostatnich kilku lat mogliśmy zaobserwować upowszechnienie się nowej metody pracy, która wtargnęła do świata programowania i testowania z niemałym impetem. Mowa tu o metodyce Agile, zwanej też metodą/techniką zwinną. Według The 11th Annual State of Agile Report, w roku 2017 94% organizacji biorących udział w badaniu, […]

Rodzaje testów

Zastanawiacie się może, po co w ogóle dokonywać podziału testów, utrudniać sobie życie regułkami i formułami? Podzielić testy na rodzaje można na wiele sposobów i wiele tych charakterystyk funkcjonuje w świecie informatycznym. Jedne bardziej, drugie mniej popularne. Pewnego rodzaju otuchą, dla osób które z przerażaniem czytają ten wstęp, […]