Ponad 50 najlepszych pytań i odpowiedzi do rozmów kwalifikacyjnych dotyczących testowania automatycznego
Pytania i odpowiedzi dotyczące rozmów kwalifikacyjnych w zakresie testów automatycznych dla nowicjuszy
1) Co to jest testowanie automatyczne?
Testowanie automatyczne wykorzystuje narzędzie do automatyzacji do wykonywania przypadków testowych. Głównym celem testowania automatycznego jest zmniejszenie liczby przypadków testowych uruchamianych ręcznie, a nie eliminacja testowania ręcznego.
2) Kiedy zautomatyzujesz test?
Automatyzacja jest preferowana w następujących przypadkach
- Powtarzalne zadania.
- Testy regresji
- Testy dymu i zdrowia psychicznego.
- Testuj z wieloma zestawami danych.
Nie zaleca się testowania jednorazowych przypadków testowych. Zwykle decyzja o tym, które przypadki testowe należy zautomatyzować, opiera się na ROI (zwrot z inwestycji). Im więcej razy zostanie wykonany test automatyczny, tym lepszy zwrot z inwestycji.
3) Kiedy nie będziesz automatyzować testów?
Nie należy automatyzować w następujących przypadkach
- Gdy testowana aplikacja często się zmienia
- Jednorazowe przypadki testowe
- Adhoc – testowanie losowe
- Testowanie eksploracyjne
- Testy użyteczności, które zazwyczaj wymagają ręcznej interwencji w celu sprawdzenia wyników testów
- Przypadki testowe ze szczegółowymi wymaganiami konfiguracyjnymi, które należy wykonać przed każdym wykonaniem
- Przypadki testowe, które zwracają nieprzewidywalne wyniki testów
- Wyklucz nieplanowany przypadek testowy
4) Z jakich etapów składa się proces automatyzacji?
W procesie automatyzacji występują następujące etapy:
- Wybór narzędzia testowego
- Zdefiniuj zakres automatyzacji
- Planowanie, projektowanie i rozwój
- Wykonanie testu
- Konserwacja
5) Jakie punkty są uwzględniane podczas planowania fazy automatyzacji?
Na etapie planowania automatyzacji należy wziąć pod uwagę następujące kwestie:
- Wybór „prawego” Narzędzie do automatyzacji
- Struktura automatyzacji wyboru, jeśli istnieje.
- Lista elementów wchodzących w zakres i poza zakresem automatyzacji.
- Konfiguracja środowiska testowego.
- Przygotowywanie wykresu Gantta harmonogramu projektów w celu opracowania i wykonania skryptu testowego.
- Zidentyfikuj produkty testowe.
Pytania do rozmowy kwalifikacyjnej w zakresie testów automatycznych dla doświadczonych
6) W jakim przypadku nie można zastosować testów automatycznych dla metody Agile?
Testowanie automatyczne nie jest pomocne w przypadku metod zwinnych w następujących sytuacjach:
- Kiedy historie użytkowników ciągle się zmieniają
- Gdy w Agile wymagany jest wyczerpujący poziom dokumentacji.
- Nadaje się tylko do testów regresyjnych podczas testów zwinnych, takich jak ciągła integracja.
Dowiedz się więcej o: Testowanie zwinne.
7) Co to jest skrypt testowy?
Skrypt testowy to kod wykonujący zestaw instrukcji w aplikacji. Służy do sprawdzenia, czy aplikacja działa zgodnie z wymaganiami oprogramowania.
Po uruchomieniu skrypt podaje wyniki testu jako pozytywne lub negatywne, co zależy od tego, czy aplikacja działa zgodnie z oczekiwaniami.
8) Jak wybrać dobre narzędzie do automatyzacji testów?
- Szerokie wsparcie dla środowiska testowego
- Mudah digunakan
- Dobra funkcja debugowania
- Solidna identyfikacja obiektów
- Nagrywanie i odtwarzanie
- Obsługuje popularne języki programowania do tworzenia skryptów testowych, na przykład Java
- Umiejętności testowania obrazu
- Testowanie bazy danych
- Parametryzacja
- Obsługa wielu platform automatyzacji
- Dostępny jest rodzaj wsparcia dla narzędzi, takich jak dokumentacja, samouczki, szkolenia itp
- Koszt i budżet
- Dobry system raportowania
9) Czy możesz mi powiedzieć kilka dobrych praktyk kodowania podczas automatyzacji?
Oto dobre praktyki automatyzacji:
- Dodaj odpowiednie komentarze, aby wyjaśnić tę część kodowania.
- Powinieneś zidentyfikować metody wielokrotnego użytku i zapisać je w osobnym pliku.
- Musi przestrzegać konwencji kodowania specyficznych dla języka.
- Zapisz dane testowe w oddzielnym pliku.
- Regularnie uruchamiaj swoje skrypty.
10) Co to jest struktura testów modułowych?
Struktura Modular Testing opiera się na koncepcji abstrakcji. W tym typie struktury tester tworzy skrypty dla wszystkich testowanych modułów aplikacji, a następnie te skrypty są łączone w kolejności hierarchicznej, aby tworzyć przypadki testowe.
11) Struktura testowania opartego na danych
In Testowanie oparte na danych ramach, dane wejściowe i oczekiwane dane wyjściowe odpowiadające danym wejściowym są przechowywane w pliku lub bazie danych.
Zautomatyzowany skrypt uruchamia te same kroki testowe dla wielu zestawów danych. Umożliwia także uruchomienie wielu przypadków testowych, w których różnią się tylko dane wejściowe, ale etapy wykonania pozostają takie same.
12) Z jakich systemów kontroli wersji korzystacie?
Korzystamy z GitHuba. Kontrola wersji pomaga śledzić zmiany w kodzie. Kontroluje kod źródłowy skryptu testowego z zarejestrowaną historią zmian, aby uprościć proces modyfikacji. Możesz także powrócić do poprzednich wersji kodu, jeśli popełnisz błąd.
13) Czym są osie XPath? Wymień niektóre z nich.
XPath to składnia manipulująca danymi XML (Extensible Markup Language). Pomagają zlokalizować węzły powiązane z tymi na drzewie. Niektóre ważne osie XPath to przodek, dziecko, przestrzeń nazw, rodzic itp.
14) Jak przyspieszyć zestaw testów automatycznych?
Aplikacje wymagające testowania interfejsu użytkownika, które wchodzą w interakcję z wieloma elementami, mogą spowolnić proces testowania. Lepiej jest stworzyć prosty skrypt testowy, który przyspieszy wykonanie testu.
15) Czy w testowaniu automatycznym konieczna jest dokumentacja?
Dokumentacja odgrywa kluczową rolę w automatyzacji testów. Należy udokumentować wszystkie metody i procedury, aby zapewnić ich powtarzalność. Specyfikacje testów, projekty, zmiany kodu, przypadki testowe, plany automatyzacji, raporty o błędach
16) Jakie typy frameworków są używane w testowaniu automatyzacji oprogramowania?
Stosowane są cztery typy frameworków
- Ramy automatyzacji opartej na danych
- Struktura automatyzacji opartej na słowach kluczowych
- Modułowa struktura automatyzacji
- Hybrydowe ramy automatyzacji
Dowiedz się więcej o: frameworki automatyzacji
17) Czy możliwe jest osiągnięcie 100% automatyzacji?
Nie, nie da się wszystkiego zautomatyzować. Osiągnięcie 100% automatyzacji jest trudne, ponieważ w niektórych scenariuszach strona rejestracyjna zawiera captcha lub przypadki testowe, których nie wykonujemy często. Co więcej, automatyzacja tych przypadków testowych nie doda wartości do automatyzacji ani nie przyniesie pozytywnego zwrotu z inwestycji.
18) Jaka jest średnia liczba przypadków testowych, które automatyzujesz dziennie?
Odpowiedź zależy od długości i złożoności scenariusza testowego. Zazwyczaj tester QA może zautomatyzować 2-4 scenariusze testowe dziennie, gdy złożoność jest ograniczona. Jednak czasami może to zostać zredukowane do 1-2, gdy złożoność jest wysoka.
19) Jaki jest standard skryptów podczas wykonywania testów automatycznych?
Podczas pisania skryptów automatyzacji należy wziąć pod uwagę następujące kwestie:
- Jednolita konwencja nazewnictwa.
- 3 linie komentarzy na każde 10 linii kodu.
- Odpowiednie wcięcie.
- Solidny scenariusz obsługi błędów i odzyskiwania.
- Używaj Frameworków tam, gdzie to możliwe.
20) Jakie są najpopularniejsze narzędzia do testów automatycznych?
Najpopularniejszymi narzędziami testowymi do testów automatycznych są:
Oto pełna lista narzędzia do testów automatycznych.
21) Jak zmierzyć skuteczność testów automatycznych?
Poniższe kryteria mogą pomóc w ocenie sukcesu testów automatycznych:
- Współczynnik wykrywalności defektów
- Czas wykonania automatyzacji i oszczędność czasu na wydanie produktu
- Redukcja kosztów pracy i innych kosztów
22) Czy możesz wymienić kilka wad testów ręcznych?
- Testowanie ręczne wymaga więcej czasu i większych zasobów.
- Niedokładność
- Wielokrotne wykonywanie tego samego przypadku testowego jest podatne na błędy i żmudne.
- Ręczne testowanie bardzo dużych i ograniczonych czasowo projektów jest niepraktyczne.
23) Jakie są różnice między narzędziami typu open source, narzędziami dostawców i narzędziami wewnętrznymi w testowaniu automatycznym?
Oto różnice między wszystkimi:
- Narzędzia typu open source: Są to bezpłatne narzędzia, których kod źródłowy jest dostępny w Internecie. Przykład: Selenium
- Narzędzia dostawcy: Te narzędzia testowe są opracowywane przez firmy i należy zakupić ich licencje. Przykład: Mikrofokus UFT.
- Narzędzia wewnętrzne: Jest budowany przez firmy na ich użytek.
24) Jakie są wymagania wstępne testów automatycznych?
Kilka ważnych warunków wstępnych testowania automatycznego to:
- Stabilna konstrukcja
- Funkcjonalności do przetestowania
- Przypadki testowe do testów automatycznych
25) Czy można automatyzować bez frameworka?
Frameworki stanowią wytyczne i nie są obowiązkowe przy tworzeniu i wykonywaniu skryptów automatyzacji. Więc tak, możemy zautomatyzować bez frameworka. Udoskonalanie i utrzymywanie skryptów testowych byłoby łatwe, gdybyśmy stworzyli framework i przestrzegali go.
26) Powiedz mi, o czym wiesz Selenium
Selenium jest darmowym (open source) pakietem automatyzacji testów. Służy do automatyzacji środowisk internetowych i mobilnych. Składa się z następujących elementów.
- Selenium IDE (dodatek do przeglądarki – narzędzie do nagrywania i odtwarzania)
- Selenium Sterownik sieciowy
- Selenium Siatka (testowanie rozproszone)
- Selenium obsługuje skrypty w językach takich jak Java, C#, Python, Ruby, PHP, Perl i JavaScenariusz.
27) Opowiedz mi o QTP
QTP (szybki test profesjonalny) jest obecnie znany jako Microfocus UFT. Jest to komercyjne narzędzie do automatyzacji i obsługuje szeroką gamę środowisk testowych: Internet, Desktop, SAP, Delphi, Net, ActiveX, Flex, Java, Oracle, Mobile, PeopleSoft, PowerBuilder, Siebel, Stingray i Visual Basic.
Językiem skryptowym jest VBScript. Narzędzie dobrze się z nim żeluje ALM (Narzędzie do zarządzania testami) i LoadRunner (Narzędzie do testowania wydajności).
Zasadnicze cechy QTP obejmują testowanie procesów biznesowych, strukturę opartą na słowach kluczowych, obsługę XML, solidne punkty kontrolne i wyniki testów.
28) Co to jest SikuliX?
SikuliX to narzędzie wykorzystujące metodę „Visual Image Match” do automatyzacji graficznego interfejsu użytkownika. Wszystkie elementy sieciowe w SikuliX należy potraktować jako obraz i zapisać w projekcie.
SikuliX składa się z
- SikuliX Scenariusz
- API skryptów wizualnych dla Jythona
- SikuliX IDE
Praktyczne zastosowania SikuliX należą:
- Może automatyzować aplikacje okienkowe i wszystko, co widzisz na ekranie, bez korzystania z wewnętrznej obsługi API.
- Zapewnia proste API.
- Można go łatwo połączyć z narzędziami takimi jak Selenium.
- Aplikacje internetowe można zautomatyzować.
- SikuliX oferuje szerokie wsparcie w automatyzacji obiektów flash.
- Może pracować w dowolnej technologii -.NET, Java.
29) Wspomnij, jaka jest różnica pomiędzy Selenium i SikuliX jest?
SikuliX | Selenium |
---|---|
Zapewnia szerokie wsparcie w automatyzacji obiektów flash | Nie może automatyzować obiektów flash, takich jak odtwarzacze wideo lub odtwarzacze audio. |
Posiada proste API | Posiada skomplikowane API |
Wykorzystuje dopasowanie wizualne do znajdowania elementów na ekranie. Możemy więc zautomatyzować wszystko, co widzimy na ekranie. | Wykorzystuje CSS, ID, lokalizatory i inne wybrane do identyfikacji elementów GUI |
Może automatyzować aplikacje internetowe i systemowe | Może zautomatyzować tylko aplikacje internetowe |
30) Jakie są cechy dobrego frameworka automatyzacji?
Oto kilka ważnych cech dobrego frameworka automatyzacji:
- Modułowy: Są to ramy, które należy dostosowywać do zmian. Aby testerzy mogli modyfikować skrypty zgodnie ze środowiskiem.
- Wielokrotnego użytku: Powinien nadawać się do ponownego użycia, tak aby metody lub narzędzia były zapisane we wspólnym pliku dostępnym dla wszystkich skryptów.
- Spójny: Powinien być napisany w spójnej formie.
- Niezależny: Skrypty automatyzujące powinny być napisane w taki sposób, aby były od siebie niezależne.
- Integracja: Framework Automation powinien być opracowany w taki sposób, aby można go było łatwo zintegrować z innymi aplikacjami.
31) Co to jest testowanie w różnych przeglądarkach?
Jest to podzbiór testów automatyzacji przeglądarek, który pomaga upewnić się, że aplikacja internetowa działa poprawnie w różnych przeglądarkach. Google Chrome, Mozillę Firefox, Microsoft Edge, Safari itp.
Głównym celem testowanie w różnych przeglądarkach jest sprawdzenie, czy Twoja witryna internetowa lub aplikacja internetowa działa poprawnie w różnych kombinacjach przeglądarek i systemów operacyjnych.
32) Jakie testy można przeprowadzić za pomocą Selenium Struktura?
Możesz użyć a Selenium struktura do następujących testów:
- Testy obciążeniowe aplikacji internetowych.
- Testowanie regresyjne aplikacji internetowych.
- Testowanie funkcjonalne aplikacji webowych.
33) Czy testowanie automatyczne to testowanie białej czy czarnej skrzynki?
Testowanie automatyczne to przede wszystkim testowanie typu czarnej skrzynki.
34) Jakie słowo kluczowe jest używane do pobrania adresu URL bieżącej strony Selenium?
Selenium WebDriver może pomóc Ci znaleźć bieżący adres URL strony za pomocą metody getcurrentURL(). Ta metoda znajdzie adres URL otwartych aplikacji i wyświetli ciąg znaków.
35) Gdzie będziesz przechowywać informacje takie jak adres URL, login i hasło?
Adres URL, login i hasło to ważne informacje, które są bardzo często używane i często ulegają zmianom. Należy je zawsze przechowywać w osobnym pliku. Jeśli tego nie zrobiono, tester automatyzacji musi to zmienić w każdym pliku z jego odniesieniem.
Pytania do rozmowy kwalifikacyjnej w zakresie testów automatycznych w przypadku doświadczenia od 3 do 5 lat
36) Jakie są rozszerzenia i zasoby testowe QTP?
Niektóre ważne zasoby testowe i rozszerzenia QTP to:
- Wyniki .xml
- Scenariusz odzyskiwania .qrs
- Testowy biegacz wsadowy .mtb
- Repozytorium obiektów współdzielonych .tsr
- Lokalne repozytorium obiektów .mtr
- Plik testowy .mts
- Biblioteka funkcji .qfl
37) Jakie są różnice między testowaniem ręcznym a testowaniem automatycznym?
Oto kilka głównych różnice między testowaniem ręcznym a automatycznym:
parametry | Testowanie ręczne | Testowanie automatyzacji |
---|---|---|
Zużycie czasu | Więcej | Less |
STLC | Postępuj ręcznie | Następuje użycie narzędzia |
zakupy | Less drogi | Drogi |
Niezawodność | Less Niezawodność | Niezawodne |
Jakość | niski | Wysoki |
Zestaw umiejętności | Less wymagany zestaw umiejętności | Wymagany jest wysoki zestaw umiejętności. |
38) Jakie są podstawowe moduły platformy testów automatycznych?
Oto kilka podstawowych modułów platformy testów automatycznych:
- Narzędzie do potwierdzania testów: To narzędzie testowe zapewni instrukcje assert do oceny oczekiwanych wartości w testowanej aplikacji. Na przykład Junit, TestNG, Junit, itp.
- Konfiguracja danych: Zapewnia, że każdy przypadek testowy pobiera dane testowe z bazy danych, pliku lub osadzone w skrypcie testowym.
- Narzędzie do zarządzania kompilacją: Aby utworzyć skrypty testowe, konieczne jest zbudowanie i wdrożenie struktury.
- Narzędzie do ciągłej integracji: Muszą integrować i wdrażać zmiany wprowadzone w frameworku w każdej iteracji.
- Narzędzie do raportowania: Pomaga wygenerować czytelny raport po przeprowadzeniu przypadków testowych, dający lepszy obraz poszczególnych kroków, błędów i wyników.
- Narzędzie do logowania: Pomagają w lepszym debugowaniu błędów i błędów.
39) Co to jest Cucumber?
Cucumber to narzędzie programistyczne oparte na zachowaniu typu open source (BDE). Jest używanym narzędziem do testowania automatyzacji aplikacji internetowych i obsługuje takie języki jak Java, Rubin, Rubin, Scala, Groovy, itp. Cucumber czyta specyfikacje wykonywalne zapisane zwykłym tekstem i testuje testowaną aplikację pod kątem tych specyfikacji.
40) Co to jest Test ukończony?
TestComplete to zautomatyzowane narzędzie do testowania interfejsu użytkownika dla aplikacji komputerowych, internetowych, mobilnych itp. Oferuje elastyczność nagrywania przypadku testowego w jednej przeglądarce i uruchamiania go w wielu przeglądarkach, wspierając w ten sposób testowanie w różnych przeglądarkach.
41) Co to jest Cypress?
Cypress to platforma testowa o otwartym kodzie źródłowym. Jest opracowany w JavaSkrypt zyskał ostatnio na popularności ze względu na swoją prostotę i rozbudowane możliwości umożliwiające testowanie w przeglądarce, a instrukcje obsługi powinny być dokładnie udokumentowane.
42) Jak sobie poradzić z wyskakującymi okienkami z alertami Selenium Sterownik sieciowy?
Selenium wyświetla alerty w przypadku wystąpienia problemów podczas testowania. Interfejs wyskakujący umożliwia obsługę alertu poprzez przełączenie sterowania na wyskakujące okienko, naciśnięcie przycisku OK lub Anuluj i powrót do ekranu strony źródłowej.
String srcPage = driver.getWindowHandle(); Alert pop = driver.switchTo().alert(); // shift control to the alert pop-up. Pop.accept(); // click k button.
43) Co to jest struktura testów hybrydowych?
Struktura testowania hybrydowego polega na tworzeniu przypadków testowych na podstawie skryptów modułowych poprzez łączenie ich w ramach modułowej struktury testowania.
44) Napisz kroki automatyzujące podstawowe przypadki testowe funkcjonalności „logowania” dla aplikacji?
Oto kroki, aby zautomatyzować podstawową funkcjonalność logowania:
Krok 1) Zrozum wymagania projektu.
Krok 2) Zidentyfikuj scenariusze testowe
Krok 3) Przygotuj plik wejściowy danych zawierający dane odpowiadające każdemu scenariuszowi
Krok 4) Uruchom narzędzie z poziomu programu.
Krok 5) Zidentyfikuj nazwę użytkownika, hasło i przyciski logowania.
Krok 6) Sprawdź, czy komunikat o błędzie w przypadku scenariuszy negatywnych jest taki sam, jak komunikat o powodzeniu w przypadku scenariuszy testu pozytywnego.
Te pytania podczas rozmowy kwalifikacyjnej pomogą również w Twoim życiu (ustach)