what is test harness
Nie jestem wielkim fanem etykiet. Oto, co przez to rozumiem.
Jeśli muszę sprawdzić kilka aspektów, zanim ustalę, czy można rozpocząć kontrolę jakości, po prostu sporządzę listę i wykonam czynność. Moim zdaniem nie ma znaczenia, czy oficjalnie nazywam to operacją „Test gotowości przeglądu”, czy nie - dopóki robię to, co mam robić, nie ma potrzeby nazywać tego konkretną nazwą ani etykietą .
Ale jestem poprawiony. Ostatnio na mojej klasie uczyłem modelu Agile-scrum do tworzenia oprogramowania. To było pytanie „ jak przebiega testowanie metodą zwinną? „Wyjaśniałem dwie metody - jedna polega na tym, że staramy się uwzględnić ją w każdym sprincie, a druga to najlepsza praktyka, której nauczyłem się z pierwszej ręki - polegająca na opóźnieniu sprintu QA w stosunku do rozwojowego.
Jeden z moich uczniów zapytał mnie, czy jest jakaś nazwa dla drugiego, a ja nie, ponieważ nigdy nie kładłem nacisku na same imiona.
Ale w tym momencie poczułem, jak ważne jest odpowiednie nazwanie procesu, aby upewnić się, że mamy termin odnoszący się do procesu, o którym mówimy.
Dlatego dzisiaj zamierzamy właśnie to zrobić: Poznaj proces kryjący się za terminem „wiązka testowa”.
Jak wspomniałem wcześniej w niektórych moich poprzednich artykułach: wiele można zrozumieć z dosłownego znaczenia nazwy. Sprawdź więc w słowniku, co oznacza „uprząż” i dowiedz się, czy ma ono zastosowanie, w tym przypadku, jest czymś, co zobaczymy na końcu.
Istnieją dwa konteksty użycia wiązki testowej:
- Testowanie automatyczne
- Testy integracyjne
Zacznijmy od pierwszego:
Czego się nauczysz:
- Kontekst 1: Testowanie wiązki przewodów w automatyzacji testów
- Kontekst 2: Testowanie wiązki przewodów w testowaniu integracyjnym
- Podsumowując:
- rekomendowane lektury
Kontekst 1: Testuj wiązkę przewodów w automatyzacji testów
W the testowanie automatyzacji świat, Wiązka testowa odnosi się do struktury i systemów oprogramowania, które zawierają skrypty testowe, parametry niezbędne (innymi słowy, dane) do uruchomienia tych skryptów, zebrania wyników testów, ich porównania (jeśli to konieczne) i monitorowania wyników.
Postaram się to uprościć na przykładzie.
Przykład:
Gdybym mówił o projekcie, który używa HP Szybki test Professional (obecnie UFT) do testów funkcjonalnych, HP ALM jest powiązany z organizowaniem i zarządzaniem wszystkimi skryptami, przebiegami i wynikami, a dane są pobierane z bazy danych MS Access - następujące wiązki testowe będą dla tego projektu:
najlepszy program do otwierania plików xml
- Samo oprogramowanie QTP (UFT)
- Skrypty i fizyczna lokalizacja, w której są przechowywane
- Zestawy testowe
- MS Access DB do dostarczania parametrów, danych lub różnych warunków, które mają być dostarczone do skryptów testowych
- HP ALM
- Wyniki testów i porównawcze atrybuty monitoringu
Jak widać, systemy oprogramowania (automatyzacja, zarządzanie testami itp.), Dane, warunki, wyniki - wszystkie one stają się integralną częścią wiązki testowej - jedynym wyjątkiem jest sam AUT.
Kontekst 2: Testowanie wiązki przewodów w testowaniu integracji
Nadszedł czas, aby zbadać, co oznacza wiązka testowa w kontekst 'Testy integracyjne' .
Testowanie integracyjne polega na połączeniu dwóch lub modułów (lub jednostek) kodu, które oddziałują ze sobą, i sprawdzenie, czy połączone zachowanie jest zgodne z oczekiwaniami, czy nie.
Idealnie byłoby, gdyby testy integracyjne dwóch modułów były i byłyby możliwe do przeprowadzenia, gdy oba są w 100% gotowe, przetestowane jednostkowo i gotowe do pracy.
Nie żyjemy jednak w idealnym świecie - co oznacza, że jeden lub więcej modułów / jednostek kodu, które mają być elementami składowymi testu integracji, może być niedostępnych. Aby rozwiązać tę sytuację, mamy kody i sterowniki.
Stud jest zwykle fragmentem kodu, który ma ograniczone funkcje i będzie zastępował lub zastępował rzeczywisty moduł kodu, który musi zająć jego miejsce.
Przykład: Aby dokładniej to wyjaśnić, posłużę się scenariuszem
Jeśli istnieje jednostka A i jednostka B, które mają zostać zintegrowane. Ponadto jednostka A wysyła dane do jednostki B lub innymi słowy, jednostka A dzwoni do jednostki B.
Jednostka A, jeśli jest dostępna w 100%, a jednostka B nie jest, programista może napisać fragment kodu, który jest ograniczony w swoich możliwościach (co oznacza, że jest to Jednostka B, jeśli ma 10 funkcji, tylko 2 lub 3, które są ważne dla integracji z A) zostanie opracowany i służy do integracji. Nazywa się to KIKUT.
Integracja wyglądałaby teraz: Jednostka A-> Stub (zastępując B)
Z drugiej strony, jeśli jednostka A jest dostępna na 0%, a jednostka B w 100%, symulacja lub proxy musi być tutaj jednostką A. Dlatego, gdy funkcja wywołująca jest zastępowana kodem pomocniczym, nazywa się ją KIEROWCA .
W tym przypadku integracja byłaby : KIEROWCA (zastępując A) -> Jednostka B
Cała struktura: Proces planowania, tworzenia i używania kodów pośredniczących i / lub sterowników do przeprowadzenia testów integracyjnych nazywa się wiązką testową.
Uwaga : powyższy przykład jest ograniczony, a scenariusz czasu rzeczywistego może nie być tak prosty lub tak prosty jak ten. Aplikacje czasu rzeczywistego mają złożone i złożone punkty integracji.
Podsumowując:
Jak zawsze STH uważa, że nawet najbardziej techniczne definicje można wyprowadzić z prostego, dosłownego znaczenia terminu.
Słownik w moim smartfonie informuje mnie, że „uprząż” to (spójrz pod kontekst czasownika):
„Stworzenie warunków do efektywnego wykorzystania; przejąć kontrolę nad określonym celem; „
Następnie i dostosowując to do testów:
„Tester to po prostu stworzenie odpowiedniego szkieletu i wykorzystanie go (i wszystkich jego elementów składowych) do kontrolowania całej czynności, aby jak najlepiej wykorzystać sytuację - czy to automatyzację, czy integrację. „
Tam odpoczywamy.
Jeszcze kilka rzeczy, zanim skończymy:
P. Jakie są zalety uprzęży testowej?
A teraz, czy mógłbyś zapytać, jakie jest znaczenie oddechu dla ludzkiego życia - jest on nieodłączny, prawda? Podobnie ramy do skutecznego testowania są podobne do danych. Korzyść, jeśli musimy przeliterować to w tak wielu słowach - powiedziałbym, że każdy proces testowy ma uprząż testową, niezależnie od tego, czy świadomie powiemy, że jest to „uprząż testowa”, czy nie. To tak, jakby podróżować ze znajomością trasy, celu i całej innej dynamiki podróży.
P. Jaka jest różnica między wiązką testową a strukturą testową ?
Osobiście uważam, że porównywanie i kontrastowanie często nie jest właściwym podejściem do zrozumienia powiązanych pojęć, ponieważ linie są często rozmyte. Odpowiadając na to pytanie, powiedziałbym, że wiązka testowa jest specyficzna, a struktura testowa jest ogólna. Na przykład wiązka testowa będzie zawierać dokładne informacje o narzędziu do zarządzania testami, łącznie z identyfikatorami logowania, które mają być używane. Z drugiej strony framework testowy powie po prostu, że narzędzie do zarządzania testami wykona odpowiednie czynności.
P. Czy są jakieś narzędzia testowe do uprzęży ?
Wiązka testowa zawiera narzędzia - takie jak oprogramowanie do automatyzacji, oprogramowanie do zarządzania testami itp. Jednak nie ma konkretnych narzędzi do implementacji wiązki testowej. Częścią wiązki testowej mogą być wszystkie lub dowolne narzędzia: QTP, JUnit, HP ALM - wszystkie z nich mogą być narzędziami składowymi dowolnej wiązki testowej.
O autorze: Ten artykuł został napisany przez członka zespołu STH Swati S.
I zawsze z definicjami zawsze są różnice zdań. Czekamy na Twoje opinie i uwielbiamy słyszeć, co myślisz. Prosimy o pozostawienie komentarza, pytania lub sugestii poniżej.
rekomendowane lektury
- Testowanie obciążenia za pomocą samouczków HP LoadRunner
- Porady dotyczące testowania oprogramowania dla początkujących testerów
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Różnice między testowaniem jednostkowym, testowaniem integracyjnym i testowaniem funkcjonalnym
- Czy testerzy tracą przyczepność podczas testowania z powodu automatyzacji?
- Globalna firma testująca oprogramowanie osiągnie wkrótce 28,8 miliarda USD
- Jak utrzymać motywację w testerach oprogramowania?
- Testing Primer Pobierz eBook