Różnica w testach Smoke and Sanity to najbardziej niezrozumiany temat w testowaniu oprogramowania. Literatura na ten temat jest ogromna, ale większość z nich jest niejasna. W poniższym artykule postaram się rozwiać wszystkie wątpliwości.
Smoke Testing
Smoke Testing (testy dymne) to technika testowania oprogramowania wykonywana po stworzeniu oprogramowania w celu sprawdzenia, czy krytyczne funkcje oprogramowania działają prawidłowo. Jest wykonywany przed wykonaniem szczegółowych testów funkcjonalnych lub regresji. Głównym celem testów dymnych jest odrzucenie aplikacji z defektami, aby zespół QA nie tracił czasu na testowanie uszkodzonej aplikacji.
Celem nie jest przeprowadzenie wyczerpujących testów, ale sprawdzenie, czy krytyczne funkcjonalności systemu działają prawidłowo. Na przykład typowy some test to – Sprawdź, czy aplikacja uruchamia się pomyślnie, Sprawdź, czy GUI reaguje… itd.
Sanity Testing
Testy Sanity to rodzaj testowania oprogramowania wykonywanego po otrzymaniu kompilacji oprogramowania, z niewielkimi zmianami w kodzie lub funkcjonalności, w celu upewnienia się, że błędy zostały naprawione i nie wprowadzono żadnych dalszych problemów z powodu tych zmian. Celem jest ustalenie, czy proponowana funkcjonalność działa mniej więcej zgodnie z oczekiwaniami. Jeśli test poprawności nie powiedzie się, kompilacja zostanie odrzucona, aby zaoszczędzić czas i koszty związane z bardziej rygorystycznymi testami.
Celem jest „nie” dokładna weryfikacja nowej funkcjonalności, ale ustalenie, czy programista zastosował pewną racjonalność podczas tworzenia oprogramowania. Na przykład, jeśli program, który weryfikujesz podczas wpisywania zwykłej wartości do pola tekstowego powoduje wywołanie błędu krytycznego to nie ma sensu testować bardziej rygorystycznych kombinacji tekstowych.
Kluczowe różnice pomiędzy Smoke testing a Sanity testing
Smoke testy
- Smoke testy są przeprowadzane w celu upewnienia się, że krytyczne funkcje programu działają prawidłowo
- Celem tego testu jest zweryfikowanie „stabilności” systemu w celu przeprowadzenia bardziej rygorystycznych testów
- To testowanie jest wykonywane przez programistów lub testerów
- Smoke testy są zwykle dokumentowane lub opisywane w formie scenariusza
Sanity testy
- Sanity testy przeprowadzane są aby sprawdzić, czy nowa funkcjonalność/błędy zostały naprawione
- Sanity testy – celem testowania jest weryfikacja „racjonalności” systemu w celu przeprowadzenia bardziej rygorystycznych testów
- Wykonywane są zwykle przez testerów
- Sanity testy zwykle nie są udokumentowane i nie mają skryptów
Praktyczny kurs testowania oprogramowania
Jesteś na początku swojej drogi jako tester oprogramowania? W takim razie ten kurs jest przeznaczony dla Ciebie.
Automatyzacja z Typescript + WebdriverIO
Zostań testerem automatyzującym. W tym kursie nauczysz się automatyzować oprogramowanie za pomocą Typescript oraz WebdriverIO.
Jira od podstaw - zarządzanie projektami
Kurs związany z narzędziem Jira. Jeśli poszukujesz swojej pierwszej pracy jako tester oprogramowania to ten kurs będzie dla Ciebie idealny!
Postman od podstaw - testowanie REST API
Naucz się od podstaw aplikacji Postman i dowiedz się jak wygląda w praktyce testowanie REST API. Dedykowany kurs postman dla testerów.