what is system testing ultimate beginner s guide
Co to jest testowanie systemu w testowaniu oprogramowania?
Testowanie systemu oznacza testowanie systemu jako całości. Wszystkie moduły / komponenty są zintegrowane w celu sprawdzenia, czy system działa zgodnie z oczekiwaniami, czy nie.
Testowanie systemu jest wykonywane po testach integracji. Odgrywa to ważną rolę w dostarczaniu produktu wysokiej jakości.
Lista samouczków:
Proces testowania zintegrowanego systemu sprzętu i oprogramowania w celu sprawdzenia, czy system spełnia określone wymagania.
Weryfikacja : Potwierdzenie poprzez badanie i zapewnienie obiektywnych dowodów, że określone wymagania zostały spełnione.
Jeśli aplikacja ma trzy moduły A, B i C, to testowanie wykonywane przez połączenie modułów A i B lub modułu B i C lub modułu A i C jest nazywane testowaniem integracyjnym. Integracja wszystkich trzech modułów i testowanie go jako kompletnego systemu jest określane jako testowanie systemu.
Czego się nauczysz:
- Moje doświadczenie
- Podejście
- Dlaczego testowanie systemu?
- Czy to test białoskrzynkowy czy czarnoskrzynkowy?
- Jak przeprowadzić test systemu?
- Zalety
- Kryteria wejścia / wyjścia
- Plan testów systemu
- Procedura pisania przypadków testowych systemu
- Przypadki testowe systemu
- Rodzaje testowania systemu
- Co to jest testowanie integracji systemów?
- Różnica między testem systemowym a testem akceptacyjnym
- Wskazówki dotyczące przeprowadzania testu systemu
- Wniosek
- rekomendowane lektury
Moje doświadczenie
Więc… czy naprawdę myślisz, że przetestowanie tego, co nazywasz, zajmie tyle czasu Testowanie systemu , nawet po poświęceniu dużo czasu na testy integracyjne?
Klient, do którego ostatnio zwróciliśmy się do projektu, nie był przekonany co do oszacowania, które przedstawiliśmy dla każdego testu.
Musiałem wpisać się na przykład:
Mike, chciałbym szczegółowo omówić nasze wysiłki i znaczenie testowania systemu na przykładzie.
- Strzelaj - odpowiedział.
Przykład testowania systemu
Producent samochodów nie produkuje całego samochodu. Każdy element samochodu jest produkowany osobno, jak siedzenia, kierownica, lusterko, hamulec, kabel, silnik, rama samochodu, koła itp.
Po wyprodukowaniu każdego elementu jest on niezależnie testowany, czy działa tak, jak powinien. Nazywa się to testowaniem jednostkowym.
Teraz, gdy każda część jest montowana z inną częścią, ta złożona kombinacja jest sprawdzana, czy złożenie nie spowodowało żadnego efektu ubocznego dla funkcjonalności każdego komponentu i czy oba komponenty współpracują zgodnie z oczekiwaniami, co nazywa się testowaniem integracji.
Gdy wszystkie części zostaną zmontowane, a samochód jest gotowy, w rzeczywistości nie jest gotowy.
Cały samochód należy sprawdzić pod kątem różnych aspektów, zgodnie z określonymi wymaganiami, takimi jak płynna jazda, przerwy, biegi i inne funkcje działające prawidłowo, samochód nie wykazuje żadnych oznak zmęczenia po przejechaniu 2500 mil w sposób ciągły, kolor samochodu jest ogólnie akceptowany i lubiany, samochód może być prowadzony po wszelkiego rodzaju drogach, takich jak gładkie i nierówne, niechlujne i proste itp., a cały ten wysiłek testowania nazywa się testowaniem systemowym i nie ma nic wspólnego z testowaniem integracji.
Przykład zadziałał zgodnie z oczekiwaniami, a klient był przekonany o wysiłkach wymaganych do przetestowania systemu.
Opowiedziałem tutaj przykład, aby podkreślić wagę tego testu.
Podejście
Wykonywany jest po zakończeniu testów integracyjnych.
Jest to głównie test typu czarnoskrzynkowego. To testowanie ocenia działanie systemu z punktu widzenia użytkownika, przy pomocy dokumentu specyfikacji. Nie wymaga żadnej wewnętrznej wiedzy o systemach, takiej jak projekt czy struktura kodu.
Zawiera funkcjonalne i niefunkcjonalne obszary zastosowania / produktu.
Kryteria ostrości:
Skupia się głównie na następujących kwestiach:
- Interfejsy zewnętrzne
- Multiprogram i złożone funkcjonalności
- Bezpieczeństwo
- Poprawa
- Wydajność
- Płynna interakcja operatora i użytkownika z systemem
- Instalowalność
- Dokumentacja
- Użyteczność
- Obciążenie / stres
Dlaczego testowanie systemu?
# 1) Wykonanie pełnego cyklu testowego jest bardzo ważne, a ST jest etapem, na którym jest wykonywany.
#dwa) ST jest wykonywany w środowisku podobnym do środowiska produkcyjnego, dzięki czemu interesariusze mogą uzyskać dobry obraz reakcji użytkownika.
# 3) Pomaga zminimalizować rozwiązywanie problemów po wdrożeniu i wezwania pomocy technicznej.
# 4 ) Na tym etapie STLC architektura aplikacji i wymagania biznesowe są testowane.
Testowanie to jest bardzo ważne i odgrywa znaczącą rolę w dostarczaniu klientowi produktu wysokiej jakości.
Zobaczmy, jak ważne jest to testowanie, korzystając z poniższych przykładów, które obejmują nasze codzienne zadania:
- Co się stanie, jeśli transakcja online nie powiedzie się po potwierdzeniu?
- Co się stanie, jeśli przedmiot umieszczony w koszyku witryny internetowej nie pozwala na złożenie zamówienia?
- Co się stanie, jeśli na koncie Gmail utworzenie nowej etykiety spowoduje błąd po kliknięciu karty Utwórz?
- Co się stanie, jeśli system ulegnie awarii, gdy obciążenie systemu zostanie zwiększone?
- Co się stanie, jeśli system ulegnie awarii i nie będzie w stanie odzyskać danych zgodnie z oczekiwaniami?
- A co jeśli instalacja oprogramowania w systemie zajmie dużo więcej czasu niż oczekiwano i na końcu zakończy się błędem?
- Co się stanie, jeśli czas reakcji witryny wydłuży się znacznie bardziej niż oczekiwano po ulepszeniu?
- Co się stanie, jeśli witryna stanie się zbyt wolna, aby użytkownik nie mógł zarezerwować biletu na podróż?
Powyżej znajduje się tylko kilka przykładów, które pokazują, jak testowanie systemu wpłynie, jeśli nie zostanie przeprowadzone we właściwy sposób.
Wszystkie powyższe przykłady są wynikiem albo niewykonania testów systemu, albo niewłaściwego ich wykonania. Należy przetestować wszystkie zintegrowane moduły, aby upewnić się, że produkt działa zgodnie z wymaganiami.
Czy to test białoskrzynkowy czy czarnoskrzynkowy?
Testowanie systemowe można uznać za technikę testu czarnoskrzynkowego.
Testowanie czarnoskrzynkowe technika nie wymaga wewnętrznej znajomości kodu, podczas gdy technika białej skrzynki wymaga wewnętrznej znajomości kodu.
Podczas przeprowadzania testów systemowych funkcjonalnych i niefunkcjonalnych, uwzględniono bezpieczeństwo, wydajność i wiele innych typów testów i są one testowane przy użyciu techniki czarnej skrzynki, w której dane wejściowe są dostarczane do systemu, a wyjście jest weryfikowane. Wewnętrzna wiedza systemu nie jest wymagana.
pytania i odpowiedzi na rozmowę z pomocą techniczną na poziomie l1
Technika czarnej skrzynki:
Jak przeprowadzić test systemu?
Zasadniczo jest to część testowania oprogramowania, a plan testów powinien zawsze zawierać określoną przestrzeń dla tego testowania.
Aby przetestować system jako całość, wymagania i oczekiwania powinny być jasne, a tester musi również zrozumieć sposób korzystania z aplikacji w czasie rzeczywistym.
Ponadto najczęściej używane narzędzia innych firm, wersje systemów operacyjnych, smaki i architektura systemów operacyjnych mogą wpływać na funkcjonalność, wydajność, bezpieczeństwo, możliwość odzyskania lub instalację systemu.
Dlatego podczas testowania systemu pomocny może być jasny obraz tego, jak aplikacja będzie używana i jakie problemy może napotkać w czasie rzeczywistym. Oprócz tego dokument wymagań jest równie ważny, jak zrozumienie aplikacji.
Jasny i zaktualizowany dokument wymagań może uchronić testera przed wieloma nieporozumieniami, założeniami i pytaniami.
Krótko mówiąc, sprecyzowany i wyraźny dokument wymagań z najnowszymi aktualizacjami wraz ze zrozumieniem wykorzystania aplikacji w czasie rzeczywistym może uczynić ST bardziej owocnym.
Testowanie to odbywa się w sposób zaplanowany i systematyczny.
Poniżej podano różne etapy wykonywania tego testu:
- Pierwszym krokiem jest stworzenie planu testów.
- Twórz przypadki testowe systemu i skrypty testowe.
- Przygotuj dane testowe wymagane do tego testu.
- Wykonaj przypadki testowe systemu i skrypt.
- Zgłoś błędy. Ponowne testowanie błędów po naprawieniu.
- Testowanie regresji aby zweryfikować wpływ zmiany w kodzie.
- Powtarzanie cyklu testowego, aż system będzie gotowy do wdrożenia.
- Wypisz się z zespołu testującego.
Co przetestować?
Poniższe punkty są objęte tym testem:
- Testowanie od końca do końca co obejmuje weryfikację interakcji między wszystkimi komponentami i zewnętrznymi urządzeniami peryferyjnymi, aby upewnić się, że system działa dobrze w którymkolwiek ze scenariuszy, jest objęty tym testowaniem.
- Weryfikuje, czy dane wejściowe dostarczone do systemu zapewniają oczekiwany rezultat.
- Weryfikuje, czy przetestowano wszystkie wymagania funkcjonalne i niefunkcjonalne i czy działają one zgodnie z oczekiwaniami, czy nie.
- Do tego a testy eksploracyjne mogą być przeprowadzane w tych testach po zakończeniu testów skryptowych. Testowanie eksploracyjne a testy ad-hoc pomagają rozwinąć błędy, których nie można znaleźć w testach skryptowych, ponieważ dają testerom swobodę testowania, ponieważ ich pragnienie jest oparte na ich doświadczeniu i intuicji.
Zalety
Jest kilka zalet:
- Testowanie obejmuje kompleksowe scenariusze testowania systemu.
- Testowanie odbywa się w tym samym środowisku, co środowisko produkcyjne, co pomaga zrozumieć perspektywę użytkownika i zapobiega problemom, które mogą wystąpić podczas uruchamiania systemu.
- Jeśli te testy są wykonywane w sposób systematyczny i właściwy, pomogłoby to w złagodzeniu problemów z postprodukcją.
- Te testy sprawdzają zarówno architekturę aplikacji, jak i wymagania biznesowe.
Kryteria wejścia / wyjścia
Przyjrzyjmy się szczegółowo kryteriom wejścia / wyjścia dla testu systemu.
Kryteria wejścia:
- System powinien spełnić kryteria wyjścia z testów integracyjnych, tj. Wszystkie przypadki testowe powinny zostać wykonane i nie powinno być żadnych błędów krytycznych lub o priorytecie P1, błędów P2 w stanie otwartym.
- Plan testów do tego testu powinny zostać zatwierdzone i podpisane.
- Przypadki / scenariusze testowe powinny być gotowe do wykonania.
- Skrypty testowe powinny być gotowe do wykonania.
- Wszystkie wymagania niefunkcjonalne powinny być dostępne, a przypadki testowe dla nich powinny zostać utworzone.
- Środowisko testowe powinno być gotowe.
Kryteria wyjścia:
- Wszystkie przypadki testowe powinny zostać wykonane.
- Żadne błędy krytyczne, priorytetowe lub związane z bezpieczeństwem nie powinny być otwarte.
- Jeśli jakiekolwiek błędy o średnim lub niskim priorytecie są w stanie otwartym, należy je zaimplementować za zgodą klienta.
- Należy złożyć raport wyjścia.
Plan testów systemu
Plan testów to dokument używany do opisania celu, celu i zakresu produktu, który ma zostać opracowany. Co należy przetestować, a czego nie należy testować, strategie testowania, używane narzędzia, wymagane środowisko i wszystkie inne szczegóły są udokumentowane, aby można było kontynuować testowanie.
Plan testów pomaga w przeprowadzaniu testów w bardzo systematyczny i strategiczny sposób, co pomaga uniknąć ryzyka lub problemów podczas testowania.
Plan testów systemu obejmuje następujące punkty:
- Cel i cel są zdefiniowane dla tego testu.
- Zakres (wymienione są funkcje do przetestowania, funkcje, które nie mają być testowane).
- Kryteria akceptacji testu (Kryteria, na podstawie których system zostanie zaakceptowany, tj. Wymienione punkty w kryteriach akceptacji powinny być w stanie pozytywnym).
- Kryteria wejścia / wyjścia (Określa kryteria, kiedy powinno się rozpocząć testowanie systemu i kiedy należy je uznać za zakończone).
- Harmonogram testów (Szacowanie, że testy mają zostać zakończone w określonym czasie).
- Strategia testów (Obejmuje techniki testowania).
- Zasoby (liczba zasobów wymaganych do testowania, ich role, dostępność zasobów itp.).
- Środowisko testowe (system operacyjny, przeglądarka, platforma).
- Przypadki testowe (Lista przypadków testowych do wykonania).
- Założenia (jeśli jakieś założenia, powinny zostać uwzględnione w Planie Testów).
Procedura pisania przypadków testowych systemu
Przypadki testowe systemu obejmują wszystkie scenariusze i przypadki użycia, a także obejmują funkcjonalne, niefunkcjonalne, interfejs użytkownika, przypadki testowe związane z bezpieczeństwem. Przypadki testowe są pisane w taki sam sposób, jak dla testów funkcjonalnych.
Przypadki testowe systemu zawierają poniższe pola w szablonie:
- Identyfikator przypadku testowego
- Nazwa zestawu testów
- Opis - zawiera opis przypadku testowego do wykonania.
- Kroki - procedura opisująca krok po kroku sposób przeprowadzania testów.
- Dane testowe - do testowania aplikacji przygotowywane są dane fikcyjne.
- Oczekiwany wynik - Oczekiwany wynik zgodnie z dokumentem wymagań jest podany w tej kolumnie.
- Rzeczywisty wynik - w tej kolumnie znajduje się wynik po wykonaniu przypadku testowego.
- Wynik pozytywny / negatywny - porównanie wyniku rzeczywistego i oczekiwanego określa kryteria zaliczenia / niepowodzenia.
- Uwagi
Przypadki testowe systemu
Oto kilka przykładowych scenariuszy testowych dla witryny handlu elektronicznego:
- Czy witryna uruchamia się poprawnie ze wszystkimi odpowiednimi stronami, funkcjami i logo
- Jeśli użytkownik może się zarejestrować / zalogować do serwisu
- Jeśli użytkownik widzi dostępne produkty, może dodać produkty do swojego koszyka, dokonać płatności i otrzymać potwierdzenie e-mailem, SMS-em lub telefonicznie.
- Jeśli główne funkcje, takie jak wyszukiwanie, filtrowanie, sortowanie, dodawanie, zmiana, lista życzeń itp., Działają zgodnie z oczekiwaniami
- Jeśli liczba użytkowników (określona jak w dokumencie wymagań) może jednocześnie uzyskiwać dostęp do witryny
- Czy witryna uruchamia się poprawnie we wszystkich głównych przeglądarkach i ich najnowszych wersjach
- Jeśli transakcje są dokonywane w witrynie za pośrednictwem określonego użytkownika, są wystarczająco bezpieczne
- Jeśli witryna uruchamia się poprawnie na wszystkich obsługiwanych platformach, takich jak Windows, Linux, Mobile itp.
- Jeśli instrukcja obsługi / instrukcja zwrotów, polityka prywatności i warunki korzystania z witryny są dostępne jako osobny dokument i przydatne dla każdego początkującego lub pierwszego użytkownika.
- Jeśli treść stron jest odpowiednio wyrównana, dobrze zarządzana i bez błędów ortograficznych.
- Jeśli limit czasu sesji jest zaimplementowany i działa zgodnie z oczekiwaniami
- Jeśli użytkownik jest zadowolony po korzystaniu z serwisu lub innymi słowy nie sprawia mu trudności w korzystaniu z serwisu.
Rodzaje testowania systemu
ST nazywa się nadzbiorem wszystkich typów testów, ponieważ obejmuje on wszystkie główne typy testów. Chociaż nacisk na rodzaje testów może się różnić w zależności od produktu, procesów organizacyjnych, harmonogramu i wymagań.
Ogólnie można to zdefiniować w następujący sposób:
Testowanie funkcjonalności: Aby upewnić się, że funkcjonalność produktu działa zgodnie z określonymi wymaganiami, w ramach możliwości systemu.
Testowanie odzyskiwalności: Aby upewnić się, jak dobrze system radzi sobie z różnymi błędami wejściowymi i innymi sytuacjami awaryjnymi.
Testowanie interoperacyjności: Aby upewnić się, czy system może dobrze współpracować z produktami innych firm, czy nie.
Test wydajności: Aby upewnić się, że system działa w różnych warunkach, pod względem charakterystyk wydajności.
Testowanie skalowalności: Aby upewnić się, że system ma możliwości skalowania w różnych kategoriach, takich jak skalowanie użytkownika, skalowanie geograficzne i skalowanie zasobów.
Testowanie niezawodności: Aby upewnić się, że system może działać przez dłuższy czas bez powodowania awarii.
Testowanie regresji: Aby zapewnić stabilność systemu podczas przechodzenia przez integrację różnych podsystemów i zadań konserwacyjnych.
Testowanie dokumentacji: Aby upewnić się, że podręcznik użytkownika systemu i inne dokumenty z tematami pomocy są poprawne i użyteczne.
Testowanie bezpieczeństwa: Aby upewnić się, że system nie pozwala na nieautoryzowany dostęp do danych i zasobów.
Test użyteczności : Aby upewnić się, że system jest łatwy w użyciu, nauce i obsłudze.
Więcej typów testów systemowych
# 1) Testowanie graficznego interfejsu użytkownika (GUI):
Testowanie GUI ma na celu sprawdzenie, czy GUI systemu działa zgodnie z oczekiwaniami, czy nie. GUI to w zasadzie to, co jest widoczne dla użytkownika podczas korzystania z aplikacji. Testowanie GUI obejmuje testowanie przycisków, ikon, pól wyboru, pola listy, pola tekstowego, menu, pasków narzędzi, okien dialogowych itp.
# 2) Testowanie zgodności:
Testowanie zgodności ma na celu zapewnienie, że opracowany produkt jest zgodny z różnymi przeglądarkami, platformami sprzętowymi, systemem operacyjnym i bazami danych, zgodnie z dokumentem wymagań.
# 3) Obsługa wyjątków:
Testowanie obsługi wyjątków jest wykonywane w celu sprawdzenia, czy nawet jeśli w produkcie wystąpi nieoczekiwany błąd, powinien on pokazać prawidłowy komunikat o błędzie i nie pozwolić aplikacji zatrzymać się. Obsługuje wyjątek w taki sposób, że błąd jest pokazywany w międzyczasie, gdy produkt jest przywracany i umożliwia systemowi przetworzenie nieprawidłowej transakcji.
# 4) Testowanie objętości:
Testowanie zbiorcze to rodzaj testowania niefunkcjonalnego, w którym testowanie odbywa się przy użyciu ogromnej ilości danych. Na przykład, zwiększa się ilość danych w bazie danych, aby zweryfikować wydajność systemu.
# 5) Testowanie warunków skrajnych:
Testowanie warunków skrajnych polega na zwiększaniu liczby użytkowników (w tym samym czasie) aplikacji do takiego stopnia, że aplikacja ulega awarii. Ma to na celu zweryfikowanie punktu, w którym aplikacja się zepsuje.
# 6) Testowanie poczytalności:
Testowanie poczytalności jest wykonywane po wydaniu kompilacji ze zmianą kodu lub funkcjonalności lub po naprawieniu jakiegokolwiek błędu. Sprawdza, czy wprowadzone zmiany nie wpłynęły na kod i nie wystąpiły żadne inne problemy z tego powodu, a system działa jak poprzednio.
Jeśli wystąpi jakikolwiek problem, kompilacja nie zostanie przyjęta do dalszych testów.
Zasadniczo nie przeprowadza się dokładnych testów kompilacji, aby zaoszczędzić czas i koszty, ponieważ kompilacja odrzuca ją z powodu znalezionego problemu. Testy poprawności są wykonywane dla wprowadzonej zmiany lub dla naprawionego problemu, a nie dla całego systemu.
# 7) Testowanie dymu:
Testowanie dymu to testowanie wykonywane w kompilacji w celu sprawdzenia, czy można ją dalej testować, czy nie. Sprawdza, czy kompilacja jest stabilna do przetestowania i wszystkie krytyczne funkcje działają poprawnie. Testowanie dymu jest wykonywane dla całego systemu, tj. Wykonywane są testy od końca do końca.
# 8) Testowanie eksploracyjne:
Testowanie eksploracyjne jak sama nazwa wskazuje, chodzi o eksplorację aplikacji. W testach eksploracyjnych nie są wykonywane żadne testy skryptowe. Przypadki testowe są zapisywane wraz z testowaniem. Koncentruje się bardziej na wykonaniu niż planowaniu.
Tester ma swobodę samodzielnego testowania, wykorzystując swoją intuicję, doświadczenie i intelekt. Tester może wybrać dowolną funkcję do przetestowania jako pierwsza, tj. Losowo może wybrać funkcję do przetestowania, w przeciwieństwie do innych technik, w których do przeprowadzania testów używa się metody strukturalnej.
# 9) Testowanie ad hoc:
Testowanie ad hoc to nieformalne testy, w przypadku których nie przeprowadza się dokumentacji ani nie planuje się przetestowania aplikacji. Tester testuje aplikację bez żadnych przypadków testowych. Celem testera jest rozbicie aplikacji. Tester wykorzystuje swoje doświadczenie, domysły i intuicję, aby znaleźć krytyczne problemy w aplikacji.
# 10) Testowanie instalacji:
Testowanie instalacji polega na sprawdzeniu, czy oprogramowanie zostanie zainstalowane bez żadnych problemów.
Jest to najważniejsza część testowania, ponieważ instalacja oprogramowania jest pierwszą interakcją między użytkownikiem a produktem. Rodzaj testowania instalacji zależy od różnych czynników, takich jak system operacyjny, platforma, dystrybucja oprogramowania itp.
Przypadki testowe, które można dołączyć, jeśli instalacja odbywa się przez Internet:
- Zła prędkość sieci i zerwane połączenie.
- Firewall i związane z bezpieczeństwem.
- Rozmiar i przybliżony czas są brane.
- Jednoczesna instalacja / pobieranie.
- Niewystarczająca pamięć
- Niewystarczająca przestrzeń
- Przerwana instalacja
# 11) Testowanie konserwacyjne:
Po uruchomieniu produktu problem może wystąpić w aktywnym środowisku lub może być wymagane ulepszenie produktu.
Po uruchomieniu produkt wymaga konserwacji, którą zajmuje się zespół konserwacyjny. Testy przeprowadzone dla jakichkolwiek problemów, ulepszeń lub migracji do sprzętu podlegają testom konserwacyjnym.
Co to jest testowanie integracji systemów?
Jest to rodzaj testów, w ramach których sprawdzana jest zdolność systemu do utrzymania integralności danych i współpracy z innymi systemami w tym samym środowisku.
Przykład testowania integracji systemu:
Weźmy przykład dobrze znanej witryny do rezerwacji biletów online - http://irctc.co.in.
To jest usługa rezerwacji biletów; sklep internetowy współpracuje z PayPal. Ogólnie można to uznać za A * B * C = R.
Teraz na poziomie systemu, funkcja rezerwacji biletów online, funkcja zakupów online i opcja płatności online mogą być testowane niezależnie, a następnie sprawdzane są testy integracyjne dla każdego z nich. A potem cały system musi być systematycznie testowany.
Gdzie więc pojawia się kwestia testowania integracji systemów?
Portal internetowy http://Irctc.co.in to połączenie systemów. Możesz wykonywać testy na tym samym poziomie (pojedynczy system, system systemów), ale na każdym poziomie możesz chcieć skupić się na różnych ryzykach (problemy z integracją, niezależna funkcjonalność).
- Podczas testowania usługi rezerwacji biletów online możesz sprawdzić, czy możesz zarezerwować bilety online. Możesz również rozważyć problemy z integracją Na przykład, Usługa rezerwacji biletów integruje back-end z front-endem (UI). Na przykład, jak zachowuje się front-end, gdy serwer bazy danych wolno odpowiada?
- Testowanie usługi rezerwacji biletów online z możliwością dokonywania zakupów online. Możesz sprawdzić, czy usługa zakupów online jest dostępna dla użytkowników zalogowanych do systemu, aby zarezerwować bilety online. Możesz również rozważyć weryfikację integracji w sklepie internetowym. Na przykład, czy użytkownik może bezproblemowo wybrać i kupić produkt.
- Testowanie integracji usługi rezerwacji biletów online z PayPal. Możesz sprawdzić, czy po zarezerwowaniu biletów pieniądze zostały przelane z Twojego konta PayPal na konto Online Ticket Booking. Możesz również rozważyć weryfikację integracji z PayPal. Na przykład, co, jeśli system umieści dwa wpisy w bazie danych po jednorazowym obciążeniu pieniędzy?
Różnicamiędzy testowaniem systemu a testowaniem integracji systemów:
Główna różnica to:
- Testowanie systemu sprawdza integralność pojedynczego systemu z odpowiednim środowiskiem
- Testowanie integracji systemów dba o integralność wielu systemów, będąc w tym samym środowisku.
Tak więc test systemu jest początkiem prawdziwego testowania, w którym testujesz produkt jako całość, a nie moduł / funkcję.
Różnica między testem systemowym a testem akceptacyjnym
Poniżej podano główne różnice:
Testowanie systemu | Testy akceptacyjne | |
---|---|---|
1 | Testowanie systemu to testowanie systemu jako całości. Testowanie od końca do końca jest przeprowadzane w celu sprawdzenia, czy wszystkie scenariusze działają zgodnie z oczekiwaniami. | Testy akceptacyjne mają na celu sprawdzenie, czy produkt spełnia wymagania klienta. |
dwa | Testowanie systemowe obejmuje testy funkcjonalne i niefunkcjonalne i jest wykonywane przez testerów. | Testy akceptacyjne są testami funkcjonalnymi i są wykonywane przez testerów oraz klienta. |
3 | Testowanie odbywa się przy użyciu danych testowych stworzonych przez testerów. | Dane rzeczywiste / produkcyjne są używane podczas przeprowadzania testów akceptacyjnych. |
4 | Cały system jest testowany w celu sprawdzenia funkcjonalności i wydajności produktu. | Testy akceptacyjne mają na celu zweryfikowanie tego wymogu biznesowego, tj. Rozwiązania celu, którego szuka klient. |
5 | Usterki znalezione podczas testów można naprawić. | Wszelkie wady wykryte podczas testów akceptacyjnych są traktowane jako awaria Produktu. |
6 | Testowanie integracji systemu i systemu to typy testów systemu. | Testy alfa i beta podlegają testom akceptacyjnym. |
Wskazówki dotyczące przeprowadzania testu systemu
- Replikuj scenariusze w czasie rzeczywistym zamiast przeprowadzać idealne testy, ponieważ system będzie używany przez użytkownika końcowego, a nie przez przeszkolonego testera.
- Weryfikuj odpowiedź systemu na różne sposoby, ponieważ człowiek nie lubi czekać lub widzieć niewłaściwych danych.
- Zainstaluj i skonfiguruj system zgodnie z dokumentacją, ponieważ to właśnie zamierza zrobić użytkownik końcowy.
- Zaangażowanie ludzi z różnych dziedzin, takich jak analitycy biznesowi, programiści, testerzy, klienci, może wysłać lepszy system.
- Regularne testowanie to jedyny sposób, aby upewnić się, że najmniejsza zmiana w kodzie mająca na celu naprawienie błędu nie spowodowała wstawienia kolejnego krytycznego błędu do systemu.
Wniosek
Testowanie systemu jest bardzo ważne i jeśli nie zostanie wykonane prawidłowo, w środowisku na żywo można stawić czoła krytycznym problemom.
System jako całość ma różne cechy wymagające weryfikacji. Prostym przykładem może być dowolna witryna internetowa. Jeśli nie zostanie przetestowany jako całość, użytkownik może stwierdzić, że witryna działa bardzo wolno lub może się zawiesić, gdy duża liczba użytkowników zaloguje się w tym samym czasie.
Tych cech nie można przetestować, dopóki witryna nie zostanie przetestowana jako całość.
Mam nadzieję, że ten samouczek był bardzo przydatny do zrozumienia koncepcji testowania systemu.
rekomendowane lektury
- Rodzaje testowania oprogramowania: różne typy testów ze szczegółami
- Testy alfa i testy beta (kompletny przewodnik)
- Co to jest testowanie integracji systemów (SIT): ucz się na przykładach
- Testy funkcjonalne a testy niefunkcjonalne
- Proces ciągłej integracji: jak poprawić jakość oprogramowania i zmniejszyć ryzyko
- 10 najlepszych narzędzi do testowania integracji do pisania testów integracji
- Co to jest testowanie integracji (samouczek z przykładem testowania integracji)
- Czym są testy wytrzymałościowe w testowaniu oprogramowania (przykłady)