50 most popularly asked selenium interview questions
W tym samouczku wymieniliśmy najlepsze pliki 50 najczęściej zadawanych pytań do wywiadu Selenium, w tym pytania do wywiadów Selenium IDE, Selenium RC, Selenium Grid i Selenium WebDriver.
Krótka uwaga na temat tej serii artykułów Selenium, zanim przejdziemy do tego samouczka:
To jest ostatni samouczek z naszej serii szkoleń online Selenium obejmującej ponad 30 kompleksowych samouczków. Mam nadzieję, że podobały wam się te samouczki i zaczęliście się z nich uczyć. Jeśli jesteś tu nowy, udaj się do ten pierwszy samouczek w tej serii szkoleń.
******************
Zobacz też „ Najlepszy internetowy kurs szkoleniowy Selenium ”Aby nauczyć się narzędzia automatyzacji Selenium od eksperta z ponad 10-letnim doświadczeniem w automatyzacji Selenium.
******************
Top 50 pytań i odpowiedzi do wywiadu Selenium
No to ruszamy.
P # 1) Co to jest testowanie automatyczne?
Testowanie automatyczne lub automatyzacja testów to proces automatyzacji ręcznego procesu testowania testowanej aplikacji / systemu. Testowanie automatyczne wymaga użycia oddzielnego narzędzia testowego, które umożliwia tworzenie skryptów testowych, które mogą być wykonywane wielokrotnie i nie wymagają żadnej ręcznej interwencji.
P # 2) Jakie są korzyści z testowania automatycznego?
Korzyści z testowania automatycznego to:
- Obsługuje wykonywanie powtarzających się przypadków testowych
- Pomaga w testowaniu dużej matrycy testowej
- Umożliwia wykonywanie równoległe
- Zachęca do wykonywania bez nadzoru
- Zwiększa dokładność, zmniejszając w ten sposób błędy generowane przez człowieka
- Oszczędność czasu i pieniędzy
P # 3) Dlaczego należy wybrać Selenium jako narzędzie testowe?
Selen
- jest darmowym i otwartym źródłem
- mają dużą bazę użytkowników i pomagają społecznościom
- mają kompatybilność z różnymi przeglądarkami (Firefox, Chrome, Internet Explorer, Safari itp.)
- mają doskonałą kompatybilność z platformami (Windows, Mac OS, Linux itp.)
- obsługuje wiele języków programowania (Java, C #, Ruby, Python, Pearl itp.)
- ma świeże i regularne zmiany w repozytorium
- obsługuje testy rozproszone
P # 4) Co to jest selen? Jakie są różne składniki selenu?
Selenium to jeden z najpopularniejszych zautomatyzowanych pakietów testowych. Selenium został zaprojektowany w taki sposób, aby wspierać i zachęcać do automatyzacji testowania funkcjonalnych aspektów aplikacji internetowych oraz szerokiej gamy przeglądarek i platform. Ze względu na swoje istnienie w społeczności open source stał się jednym z najbardziej akceptowanych narzędzi wśród profesjonalistów testujących.
podstawowe narzędzia związane z zarządzaniem ryzykiem to
Selenium to nie tylko pojedyncze narzędzie lub narzędzie, ale raczej pakiet kilku narzędzi testowych iz tego samego powodu jest nazywany pakietem. Każde z tych narzędzi zostało zaprojektowane w celu zaspokojenia różnych wymagań środowiska testowego i testowego.
Pakiet pakietu składa się z następujących zestawów narzędzi:
- Zintegrowane środowisko programistyczne Selenium (IDE) - Selenium IDE to narzędzie do nagrywania i odtwarzania. Jest rozpowszechniany jako wtyczka Firefox.
- Pilot zdalnego sterowania Selenium (RC) - Selenium RC to serwer, który umożliwia użytkownikowi tworzenie skryptów testowych w wybranym języku programowania. Umożliwia także wykonywanie skryptów testowych w szerokim spektrum przeglądarek.
- Selenium WebDriver - WebDriver to zupełnie inne narzędzie, które ma różne zalety w porównaniu z Selenium RC. WebDriver bezpośrednio komunikuje się z przeglądarką internetową i wykorzystuje swoją natywną kompatybilność do automatyzacji.
- Siatka selenu - Selenium Grid jest używany do jednoczesnej dystrybucji wykonywania testów na wielu platformach i środowiskach.
P # 5) Jakie typy testów mogą być obsługiwane przez Selenium?
Selenium obsługuje następujące typy testów:
- Testy funkcjonalności
- Testowanie regresji
P # 6) Jakie są ograniczenia Selenium?
Oto ograniczenia Selenium:
- Selenium obsługuje testowanie tylko aplikacji internetowych
- Aplikacji mobilnych nie można testować za pomocą Selenium
- Czytników Captcha i kodów kreskowych nie można testować przy użyciu Selenium
- Raporty można generować tylko za pomocą narzędzi innych firm, takich jak TestNG lub JUnit.
- Ponieważ Selenium jest darmowym narzędziem, nie ma gotowego wsparcia ze strony dostawcy, ponieważ użytkownik może znaleźć wiele pomocnych społeczności.
- Od użytkownika oczekuje się wcześniejszej znajomości języka programowania.
Pytanie 7) Jaka jest różnica między Selenium IDE, Selenium RC i WebDriver?
Funkcja | Selenium IDE | Selen RC | WebDriver |
---|---|---|---|
Obsługa alertów, nawigacji, list rozwijanych | Selenium IDE nie zapewnia jawnie pomocy do obsługi alertów, nawigacji, menu rozwijanych | Selenium RC nie zapewnia jawnie pomocy do obsługi alertów, nawigacji, menu rozwijanych. | WebDriver oferuje szeroką gamę narzędzi i klas, które pomagają w wydajnej i efektywnej obsłudze alertów, nawigacji i menu rozwijanych. |
Zgodność z przeglądarkami | Selenium IDE jest dostarczane jako wtyczka do przeglądarki Firefox, dlatego obsługuje tylko przeglądarkę Firefox | Selenium RC obsługuje różne wersje Mozilla Firefox, Google Chrome, Internet Explorer i Opera. | WebDriver obsługuje różne wersje przeglądarek Mozilla Firefox, Google Chrome, Internet Explorer i Opera. Obsługuje również HtmlUnitDriver, który jest przeglądarką pozbawioną GUI lub bezgłową. |
Nagrywanie i odtwarzanie | Selenium IDE obsługuje funkcję nagrywania i odtwarzania | Selenium RC nie obsługuje funkcji nagrywania i odtwarzania. | WebDriver nie obsługuje funkcji nagrywania i odtwarzania |
Wymagania serwera | Selenium IDE nie wymaga uruchamiania żadnego serwera przed wykonaniem skryptów testowych | Selenium RC wymaga uruchomienia serwera przed wykonaniem skryptów testowych. | WebDriver nie wymaga uruchamiania żadnego serwera przed wykonaniem skryptów testowych |
Architektura | Selenium IDE to framework oparty na Javascript | Selenium RC to framework oparty na JavaScript. | WebDriver wykorzystuje natywną zgodność przeglądarki do automatyzacji |
Zorientowany obiektowo | Selenium IDE nie jest narzędziem zorientowanym obiektowo | Selenium RC jest narzędziem częściowo zorientowanym na obiekt. | WebDriver jest narzędziem czysto obiektowym |
Dynamiczne wyszukiwarki (do lokalizowania elementów internetowych na stronie internetowej) | Selenium IDE nie obsługuje dynamicznych wyszukiwarek | Selenium RC nie obsługuje dynamicznych wyszukiwarek. | WebDriver obsługuje dynamiczne wyszukiwarki |
Testowanie WAP (iPhone / Android) | Selenium IDE nie obsługuje testowania aplikacji na iPhone'a / Andrioda | Selenium RC nie obsługuje testowania aplikacji na iPhone'a / Androida. | WebDriver został zaprojektowany w taki sposób, aby skutecznie wspierać testowanie aplikacji na iPhone'a / Androida. Narzędzie zawiera szeroką gamę sterowników do testowania w oparciu o WAP. Na przykład AndroidDriver, iPhoneDriver |
Wsparcie słuchacza | Selenium IDE nie obsługuje słuchaczy | Selenium RC nie obsługuje słuchaczy. | WebDriver obsługuje implementację detektorów |
Prędkość | Selenium IDE jest szybkie, ponieważ jest podłączone do przeglądarki internetowej, która uruchamia test. W ten sposób IDE i przeglądarka komunikują się bezpośrednio | Selenium RC jest wolniejsze niż WebDriver, ponieważ nie komunikuje się bezpośrednio z przeglądarką; raczej wysyła seleńskie polecenia do Selenium Core, który z kolei komunikuje się z przeglądarką. | WebDriver komunikuje się bezpośrednio z przeglądarkami internetowymi. Dzięki temu jest znacznie szybszy. |
P # 8) Kiedy powinienem używać Selenium IDE?
Selenium IDE to najprostsze i najłatwiejsze narzędzie wchodzące w skład Pakietu Selenium. Jego funkcja nagrywania i odtwarzania sprawia, że jest wyjątkowo łatwy do nauczenia przy minimalnej znajomości dowolnego języka programowania. Selenium IDE to idealne narzędzie dla naiwnego użytkownika.
P # 9) Co to jest Selenese?
Selenese to język, który jest używany do pisania skryptów testowych w Selenium IDE.
Pytanie nr 10) Jakie są różne typy lokalizatorów w Selenium?
Lokalizator można nazwać adresem, który jednoznacznie identyfikuje element sieciowy na stronie internetowej. W ten sposób, aby dokładnie i precyzyjnie zidentyfikować elementy sieci, mamy różne typy lokalizatorów w Selenium :
- ID
- Nazwa klasy
- Nazwa
- Nazwa znacznika
- Tekst linku
- PartialLinkText
- Xpath
- Selektor CSS
- OSĄD
Pytanie nr 11) Jaka jest różnica między poleceniami assert i verify?
Zapewniać: Polecenie Assert sprawdza, czy podany warunek jest prawdziwy czy fałszywy. Powiedzmy, że sprawdzamy, czy dany element jest obecny na stronie internetowej, czy nie. Jeśli warunek jest prawdziwy, wówczas sterowanie programu wykona następny krok testu, ale jeśli warunek jest fałszywy, wykonanie zatrzymałoby się i dalsze testy nie byłyby wykonywane.
Zweryfikować: Polecenie Verify sprawdza również, czy podany warunek jest prawdziwy, czy fałszywy. Niezależnie od tego, czy warunek jest prawdziwy czy fałszywy, wykonanie programu nie zatrzymuje się, tj. Jakakolwiek awaria podczas weryfikacji nie zatrzymałaby wykonania i wszystkie kroki testowe zostałyby wykonane.
P # 12) Co to jest XPath?
XPath służy do lokalizowania elementu internetowego na podstawie jego ścieżki XML. XML to skrót od Extensible Markup Language i służy do przechowywania, organizowania i transportu dowolnych danych. Przechowuje dane w parze klucz-wartość, która jest bardzo podobna do tagów HTML. Oba są językami znaczników i ponieważ należą do tego samego parasola, XPath może być używany do lokalizowania elementów HTML.
Podstawą lokalizowania elementów za pomocą XPath jest przechodzenie między różnymi elementami na całej stronie, co umożliwia użytkownikowi znalezienie elementu z odniesieniem do innego elementu.
P # 13) Jaka jest różnica między „/” a „//” w Xpath?
Pojedynczy ukośnik „/” - Pojedynczy ukośnik służy do tworzenia ścieżki Xpath ze ścieżką bezwzględną, tj. Ścieżka xpath zostanie utworzona, aby rozpocząć wybór od węzła dokumentu / węzła początkowego.
Podwójny ukośnik „//” - Podwójny ukośnik służy do tworzenia ścieżki Xpath ze ścieżką względną, tj. Ścieżka xpath zostanie utworzona, aby rozpocząć zaznaczanie z dowolnego miejsca w dokumencie.
P # 14) Co to są zasady tego samego pochodzenia i jak można z nimi postępować?
Problem z polityką tego samego pochodzenia uniemożliwia dostęp do DOM dokumentu pochodzącego z innego źródła niż to, do którego próbujemy uzyskać dostęp.
Pochodzenie to sekwencyjna kombinacja schematu, hosta i portu adresu URL. Na przykład w przypadku adresu URL https://www.softwaretestinghelp.com/resources/ pochodzenie jest kombinacją odpowiednio http, softwaretestinghelp.com, 80.
W ten sposób Selenium Core (program JavaScript) nie może uzyskać dostępu do elementów pochodzących z innego źródła niż miejsce, w którym został uruchomiony. Na przykład, jeśli uruchomiłem program JavaScript z „https://www.softwaretestinghelp.com”, byłbym w stanie uzyskać dostęp do stron w tej samej domenie, takich jak „https://www.softwaretestinghelp.com/resources ”Lub„ https://www.softwaretestinghelp.com/istqb-free-updates/ ”. Inne domeny, takie jak google.com, seleniumhq.org, nie byłyby już dostępne.
Tak więc, aby obsługiwać tę samą politykę pochodzenia, wprowadzono Selenium Remote Control.
Pytanie nr 15) Kiedy powinienem używać Selenium Grid?
Selenium Grid może być używany do jednoczesnego wykonywania tych samych lub różnych skryptów testowych na wielu platformach i przeglądarkach, aby osiągnąć rozproszone wykonywanie testów, testowanie w różnych środowiskach i znaczną oszczędność czasu wykonywania.
P # 16) Co rozumiemy przez Selenium 1 i Selenium 2?
Selenium RC i WebDriver, w połączeniu, są popularnie znane jako Selenium 2. Sam Selenium RC jest również nazywany Selenium 1.
P # 17) Jakie jest najnowsze narzędzie Selenium?
WebDriver
P # 18) Jak uruchomić przeglądarkę za pomocą WebDriver?
Do uruchomienia przeglądarki można użyć następującej składni:
WebDriver driver = Nowy FirefoxDriver ();
WebDriver driver = Nowy ChromeDriver ();
WebDriver driver = Nowy InternetExplorerDriver ();
P # 19) Jakie są różne typy sterowników dostępne w programie WebDriver?
Różne sterowniki dostępne w WebDriver to:
- FirefoxDriver
- InternetExplorerDriver
- ChromeDriver
- SafariDriver
- OperaDriver
- AndroidDriver
- IPhoneDriver
- HtmlUnitDriver
P # 20) Jakie są różne typy czekania dostępne w WebDriver?
Istnieją dwa rodzaje czekania dostępne w WebDriver :
- Niejawne oczekiwanie
- Jawne czekanie
Niejawne oczekiwanie: Niejawne oczekiwania są używane do zapewnienia domyślnego czasu oczekiwania (powiedzmy 30 sekund) między każdym kolejnym krokiem testowym / poleceniem w całym skrypcie testowym. Zatem kolejny krok testowy zostałby wykonany tylko wtedy, gdy upłynęło 30 sekund od wykonania poprzedniego kroku / polecenia testu.
Jawne oczekiwanie: Jawne oczekiwania są używane do wstrzymania wykonania do czasu spełnienia określonego warunku lub upływu maksymalnego czasu. W przeciwieństwie do niejawnych oczekiwań, jawne oczekiwania są stosowane tylko dla określonego wystąpienia.
Q # 21) Jak wpisać tekst w polu tekstowym za pomocą Selenium?
Użytkownik może użyć sendKeys („Ciąg do wprowadzenia”), aby wprowadzić ciąg w polu tekstowym.
Składnia:
Nazwa użytkownika WebElement = drv .findElement (By.id ( 'E-mail' ));
// wpisanie nazwy użytkownika
username.sendKeys ( „Sth” );
Pytanie nr 22) Jak sprawdzić, czy element jest wyświetlany na ekranie?
WebDriver ułatwia użytkownikowi sprawdzanie widoczności elementów sieci za pomocą następujących metod. Tymi elementami sieci mogą być przyciski, pola upuszczania, pola wyboru, przyciski opcji, etykiety itp.
- isDisplayed ()
- jest zaznaczony()
- jest włączony()
Składnia:
isDisplayed ():
boolean buttonPresence = driver.findElement (By.id ( 'Uwierzyć' )). isDisplayed ();
jest zaznaczony():
boolean buttonSelected = driver.findElement (By.id ( 'Uwierzyć' )).jest zaznaczony();
jest włączony():
boolean searchIconEnabled = driver.findElement (By.id ( „Gbqfb” )).jest włączony();
Pytanie # 23) Jak możemy uzyskać tekst elementu internetowego?
Polecenie Get służy do pobrania wewnętrznego tekstu określonego elementu WWW. Polecenie nie wymaga żadnego parametru, ale zwraca wartość ciągu. Jest to również jedno z szeroko używanych poleceń do weryfikacji komunikatów, etykiet, błędów itp. Wyświetlanych na stronach internetowych.
Składnia:
String Text = driver.findElement (By.id („Text”)). GetText ();
P # 24) Jak wybrać wartość z listy rozwijanej?
Wartość z listy rozwijanej można wybrać za pomocą klasy Select WebDriver.
Składnia:
selectByValue:
Wybierz selectByValue = Nowy Wybierz( kierowca .findElement (By.id ( „SelectID_One” )));
selectByValue.selectByValue ( „Greenvalue” );
selectByVisibleText:
Wybierz selectByVisibleText = Nowy Wybierz ( kierowca .findElement (By.id ( „SelectID_Two” )));
selectByVisibleText.selectByVisibleText ( 'Limonka' );
selectByIndex:
Wybierz selectByIndex = Nowy Wybierz( kierowca .findElement (By.id ( „SelectID_Three” )));
selectByIndex.selectByIndex (2);
P # 25) Jakie są różne typy poleceń nawigacyjnych?
Poniżej znajdują się pliki polecenia nawigacji :
navigate (). back () - Powyższe polecenie nie wymaga żadnych parametrów i przenosi użytkownika z powrotem do poprzedniej strony internetowej w historii przeglądarki internetowej.
Przykładowy kod:
driver.navigate (). back ();
navigate (). forward () - To polecenie umożliwia użytkownikowi przejście do następnej strony internetowej w odniesieniu do historii przeglądarki.
Przykładowy kod:
driver.navigate (). forward ();
navigate (). refresh () - To polecenie pozwala użytkownikowi odświeżyć bieżącą stronę internetową, przeładowując wszystkie elementy sieciowe.
Przykładowy kod:
driver.navigate (). refresh ();
nawigować do() - To polecenie umożliwia użytkownikowi uruchomienie nowego okna przeglądarki internetowej i przejście do określonego adresu URL.
Przykładowy kod:
driver.navigate (). to („https://google.com”);
Q # 26) Jak kliknąć hiperłącze za pomocą linkText?
kierowca .findElement (By.linkText ( 'Google' )).Kliknij();
Polecenie znajduje element za pomocą tekstu linku, a następnie kliknij ten element, a tym samym użytkownik zostanie przekierowany na odpowiednią stronę.
Dostęp do wyżej wymienionego łącza można również uzyskać za pomocą następującego polecenia.
kierowca .findElement (By.partialLinkText ( 'Maź' )).Kliknij();
Powyższe polecenie wyszukuje element na podstawie podłańcucha linku podanego w nawiasie, a zatem partsLinkText () znajduje element web z określonym podciągiem, a następnie klika go.
Pytanie nr 27) Jak rama uchwytu w WebDriver ?
jak znaleźć klucz bezpieczeństwa sieci dla mobilnego punktu dostępu
Akronim ramki wbudowanej, jak iframe, służy do wstawiania innego dokumentu do bieżącego dokumentu HTML lub po prostu strony internetowej na stronie internetowej poprzez włączenie zagnieżdżenia.
Wybierz element iframe według identyfikatora
kierowca .switchTo (). frame ( ' ID ramy ' );
Lokalizowanie iframe za pomocą tagName
driver.switchTo (). frame (driver.findElements (By.tagName („iframe”). get (0));
Lokalizowanie iframe za pomocą index
ramka (indeks)
driver.switchTo (). frame (0);
ramka (nazwa ramki)
driver.switchTo (). frame („nazwa ramki”);
ramka (element WebElement)
Wybierz Okno nadrzędne
driver.switchTo (). defaultContent ();
P # 28) Kiedy używamy findElement () i findElements ()?
findElement (): Funkcja findElement () służy do znajdowania pierwszego elementu na bieżącej stronie internetowej pasującego do określonej wartości lokalizatora. Zwróć uwagę, że zostanie pobrany tylko pierwszy pasujący element.
Składnia:
Element WebElement = kierowca .findElements (By.xpath ( „// div (@ id = 'przykład') // ul // li” ));
findElements (): Funkcja findElements () służy do znajdowania wszystkich elementów na bieżącej stronie internetowej pasujących do określonej wartości lokalizatora. Zwróć uwagę, że wszystkie pasujące elementy zostaną pobrane i zapisane na liście elementów WebElements.
Składnia:
List elementList = kierowca .findElements (By.xpath ( „// div (@ id = 'przykład') // ul // li” ));
Pytanie # 29) Jak znaleźć więcej niż jeden element sieciowy na liście?
Czasami możemy natknąć się na elementy tego samego typu, takie jak wiele hiperłączy, obrazów itp. Ułożonych w uporządkowaną lub nieuporządkowaną listę. Dlatego absolutnie sensowne jest zajmowanie się takimi elementami za pomocą pojedynczego fragmentu kodu i można to zrobić za pomocą listy WebElement.
Przykładowy kod
// Storing the list List elementList = driver.findElements(By.xpath('//div(@id='example')//ul//li')); // Fetching the size of the list int listSize = elementList.size(); for (int i=0; i P # 30) Jaka jest różnica między poleceniem driver.close () a driver.quit?
blisko() : Metoda close () programu WebDriver zamyka okno przeglądarki internetowej, nad którym aktualnie pracuje użytkownik, lub możemy również powiedzieć, że okno, do którego aktualnie uzyskuje dostęp WebDriver. Polecenie nie wymaga żadnego parametru ani nie zwraca żadnej wartości.
porzucić() : W przeciwieństwie do metody close () metoda quit () zamyka wszystkie okna, które program otworzył. Podobnie jak metoda close (), polecenie nie wymaga żadnego parametru ani nie zwraca żadnej wartości.
P # 31) Czy Selenium obsługuje wyskakujące okienka oparte na oknach?
Selenium to narzędzie do testowania automatyzacji, które obsługuje tylko testowanie aplikacji internetowych. Dlatego wyskakujące okienka nie mogą być obsługiwane za pomocą Selenium.
P # 32) Jak radzimy sobie z wyskakującymi okienkami internetowymi?
WebDriver oferuje użytkownikom bardzo skuteczny sposób obsłuż te wyskakujące okienka za pomocą interfejsu Alert . Istnieją cztery metody, których będziemy używać wraz z interfejsem Alert.
- void dismiss () - Metoda dismiss () kliknie przycisk „Cancel”, gdy tylko pojawi się wyskakujące okienko.
- void accept () - Metoda accept () kliknie przycisk „Ok”, gdy tylko pojawi się wyskakujące okienko.
- String getText () - Metoda getText () zwraca tekst wyświetlany w polu alertu.
- void sendKeys (String stringToSend) - Metoda sendKeys () wprowadza określony wzorzec ciągu w polu ostrzeżenia.
Składnia:
// akceptowanie alertu javascript
Alert alert = driver.switchTo (). Alert ();
alert.accept ();
P # 33) Jak możemy obsłużyć wyskakujące okienka oparte na oknach?
Selenium to narzędzie do testowania automatyzacji, które obsługuje tylko testowanie aplikacji internetowych, co oznacza, że nie obsługuje testowania aplikacji opartych na systemie Windows. Jednak sam selen nie może pomóc w tej sytuacji, ale wraz z interwencją strony trzeciej ten problem można rozwiązać. Dostępnych jest kilka narzędzi innych firm do obsługi wyskakujących okienek wraz z selenem, takich jak AutoIT, klasa robota itp.
Q # 34) Jak potwierdzić tytuł strony internetowej?
// zweryfikuj tytuł strony internetowej
assertTrue („Tytuł okna jest nieprawidłowy.”, driver.getTitle (). equals („Tytuł strony”));
Q # 35) Jak najechać kursorem myszy na element sieciowy za pomocą WebDriver?
WebDriver oferuje szeroką gamę narzędzi do interakcji, które użytkownik może wykorzystać do automatyzacji zdarzeń związanych z myszą i klawiaturą. Interfejs akcji jest jednym z takich narzędzi, które symuluje interakcje pojedynczego użytkownika.
Dlatego w poniższym scenariuszu użyliśmy interfejsu akcji, aby najechać kursorem myszy na listę rozwijaną, która następnie otworzy listę opcji.
Przykładowy kod:
// Instantiating Action Interface Actions actions=new Actions(driver); // howering on the dropdown actions.moveToElement(driver.findElement(By.id('id of the dropdown'))).perform(); // Clicking on one of the items in the list options WebElement subLinkOption=driver.findElement(By.id('id of the sub link')); subLinkOption.click();
Q # 36) Jak pobrać właściwości CSS elementu?
Wartości właściwości css można pobrać za pomocą metody get ():
Składnia:
driver.findElement (By.id ( 'ID „)). GetCssValue ( „Nazwa atrybutu css” );
driver.findElement (By.id ( 'ID „)). GetCssValue ( 'rozmiar czcionki' );
Q # 37) Jak zrobić zrzut ekranu w WebDriver?
import org.junit.After; import org.junit.Before; import org.junit.Test; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class CaptureScreenshot { WebDriver driver; @Before public void setUp() throws Exception { driver = new FirefoxDriver(); driver.get('https://google.com'); } @After public void tearDown() throws Exception { driver.quit(); } @Test public void test() throws IOException { // Code to capture the screenshot File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); // Code to copy the screenshot in the desired location FileUtils.copyFile(scrFile, new File('C:\CaptureScreenshot\google.jpg')) } }
Pytanie nr 38) Co to jest Junit?
Junit to framework do testów jednostkowych wprowadzony przez Apache. Junit jest oparty na Javie.
P # 39) Co to są adnotacje Junit?
Poniżej znajdują się adnotacje JUnit:
- @Test: Adnotacja informuje system, że metoda z adnotacją @Test jest metodą testową. W jednym skrypcie testowym może znajdować się wiele metod testowych.
- @Przed: Metoda z adnotacją @Before informuje system, że metoda ta powinna być wykonywana za każdym razem przed każdą z metod testowych.
- @Po: Metoda z adnotacją @After informuje system, że metoda ta powinna być wykonywana za każdym razem po każdej metodzie badawczej.
- @Przed zajęciami: Metoda z adnotacją @BeforeClass informuje system, że ta metoda powinna zostać wykonana raz przed którąkolwiek z metod testowych.
- @Po zajęciach: Metoda z adnotacją @AfterClass informuje system, że ta metoda powinna zostać wykonana raz po którejkolwiek z metod badawczych.
- @Ignorować: Metoda z adnotacją @Ignore informuje system, że ta metoda nie zostanie wykonana.
Pytanie nr 40) Co to jest TestNG i czym jest lepszy niż Junit?
TestNG to zaawansowany framework zaprojektowany w taki sposób, aby wykorzystać zalety zarówno programistów, jak i testerów. Wraz z uruchomieniem frameworków JUnit zyskał ogromną popularność wśród aplikacji Java, programistów Java i testerów Java, znacznie zwiększając jakość kodu. Pomimo tego, że jest łatwy w użyciu i nieskomplikowany, JUnit ma swoje własne ograniczenia, które powodują potrzebę wprowadzenia TestNG na scenę. TestNG to platforma open source, która jest rozpowszechniana na licencji oprogramowania Apache i jest łatwo dostępna do pobrania.
TestNG z WebDriver zapewnia wydajny i skuteczny format wyników testów, który z kolei może być udostępniany interesariuszom, aby mieć wgląd w stan produktu / aplikacji, eliminując w ten sposób wadę braku możliwości generowania raportów z testów przez WebDriver. TestNG ma wbudowany mechanizm obsługi wyjątków, który pozwala programowi działać bez nieoczekiwanego zakończenia.
Istnieją różne zalety, które sprawiają, że TestNG jest lepszy od JUnit. Niektórzy z nich są:
- Dodano zaawansowane i łatwe adnotacje
- Można ustawić wzorce wykonywania
- Jednoczesne wykonywanie skryptów testowych
- Można ustawić zależności przypadków testowych
Pytanie # 41) Jak ustawić priorytet przypadku testowego w TestNG?
Ustawianie priorytetu w TestNG
Fragment kodu
package TestNG; import org.testng.annotations.*; public class SettingPriority { @Test(priority=0) public void method1() { } @Test(priority=1) public void method2() { } @Test(priority=2) public void method3() { } }
Sekwencja wykonania testu:
- Metoda 1
- Metoda 2
- Metoda 3
Pytanie nr 42) Co to jest framework?
Ramy to konstruktywne połączenie różnych wytycznych, standardów kodowania, koncepcji, procesów, praktyk, hierarchii projektów, modułowości, mechanizmu raportowania, wstrzykiwania danych testowych itp. Do testowania automatyzacji filarów.
Pytanie # 43) Jakie są zalety platformy Automation?
Zaleta Framework automatyzacji testów
- Możliwość ponownego wykorzystania kodu
- Maksymalne pokrycie
- Scenariusz odzyskiwania
- Niskie koszty utrzymania
- Minimalna interwencja ręczna
- Łatwe raportowanie
Q # 44) Jakie są różne typy frameworków?
Poniżej znajdują się różne typy ram:
- Framework oparty na modułach: Struktura dzieli całą „aplikację w trakcie testów” na liczbę logicznych i izolowanych modułów. Dla każdego modułu tworzymy osobny i niezależny skrypt testowy. Tak więc, gdy te skrypty testowe są razem, buduje większy skrypt testowy reprezentujący więcej niż jeden moduł.
- Framework testowania architektury biblioteki: Podstawową podstawą frameworka jest określenie typowych kroków i pogrupowanie ich w funkcje w bibliotece i wywołanie tych funkcji w skryptach testowych, gdy jest to wymagane.
- Data Driven Testing Framework: Data Driven Testing Framework pomaga użytkownikowi oddzielić logikę skryptu testowego i dane testowe od siebie. Pozwala użytkownikowi przechowywać dane testowe w zewnętrznej bazie danych. Dane są tradycyjnie przechowywane w parach „klucz-wartość”. W ten sposób klucz może być używany do uzyskiwania dostępu i wypełniania danych w skryptach testowych.
- Struktura testowania oparta na słowach kluczowych: Struktura testowa oparta na słowach kluczowych jest rozszerzeniem struktury testowej opartej na danych w tym sensie, że nie tylko oddziela dane testowe od skryptów, ale także zachowuje określony zestaw kodu należący do skryptu testowego w zewnętrznym pliku danych.
- Hybrydowe ramy testowe: Hybrid Testing Framework to połączenie więcej niż jednej z wyżej wymienionych frameworków. Najlepszą rzeczą w takiej konfiguracji jest to, że wykorzystuje ona zalety wszelkiego rodzaju powiązanych frameworków.
- Struktura rozwoju oparta na zachowaniu: Framework Behavior Driven Development umożliwia automatyzację walidacji funkcjonalnych w czytelnym i zrozumiałym formacie dla analityków biznesowych, programistów, testerów itp.
P # 45) Jak mogę odczytać dane testowe z programu Excel?
Dane testowe można efektywnie odczytać z programu Excel za pomocą JXL lub POI API. Zobacz szczegółowy samouczek tutaj .
Q # 46) Jaka jest różnica między POI a jxl jar?
# Słoik JXL Słoik z punktami POI 1 JXL obsługuje format „.xls”, tj. Format binarny. JXL nie obsługuje formatu Excel 2007 i „.xlsx”, tj. Formatu opartego na XML Słoik POI obsługuje wszystkie te formaty dwa JXL API było ostatnio aktualizowane w 2009 roku POI są regularnie aktualizowane i publikowane 3 Dokumentacja JXL nie jest tak obszerna jak dokumentacja POI POI posiada dobrze przygotowaną i bardzo obszerną dokumentację 4 JXL API nie obsługuje formatowania tekstu sformatowanego POI API obsługuje formatowanie tekstu sformatowanego 5 JXL API jest szybsze niż API POI POI API jest wolniejsze niż JXL API
Pytanie nr 47) Jaka jest różnica między Selenium a QTP?
Funkcja Selen Szybki test Professional (QTP) Zgodność z przeglądarkami Selenium obsługuje prawie wszystkie popularne przeglądarki, takie jak Firefox, Chrome, Safari, Internet Explorer, Opera itp QTP obsługuje przeglądarki Internet Explorer, Firefox i Chrome. QTP obsługuje tylko system operacyjny Windows Dystrybucja Selenium jest rozpowszechniane jako narzędzie open source i jest dostępne bezpłatnie QTP jest rozpowszechniane jako narzędzie licencjonowane i jest komercjalizowane Aplikacja w trakcie testu Selenium obsługuje testowanie tylko aplikacji internetowych QTP obsługuje testowanie zarówno aplikacji internetowej, jak i aplikacji opartej na systemie Windows Repozytorium obiektów Repozytorium obiektów należy utworzyć jako oddzielną jednostkę QTP automatycznie tworzy i obsługuje repozytorium obiektów Wsparcie językowe Selenium obsługuje wiele języków programowania, takich jak Java, C #, Ruby, Python, Perl itp QTP obsługuje tylko skrypt VB Wsparcie dostawcy Ponieważ Selenium jest darmowym narzędziem, użytkownik nie uzyskałby wsparcia dostawcy w rozwiązywaniu problemów Użytkownicy mogą łatwo uzyskać wsparcie dostawcy w przypadku jakiegokolwiek problemu
P # 48) Czy WebDriver może testować aplikacje mobilne?
WebDriver nie może testować aplikacji mobilnych. WebDriver to internetowe narzędzie testowe, dzięki czemu można testować aplikacje w przeglądarkach mobilnych.
Q # 49) Czy captcha może być zautomatyzowane?
to klucz bezpieczeństwa sieci, taki sam jak hasło
Nie, captcha i czytnik kodów kreskowych nie mogą być zautomatyzowane.
P # 50) Co to jest repozytorium obiektów? Jak możemy stworzyć repozytorium obiektów w Selenium?
Repozytorium obiektów to termin używany w odniesieniu do zbioru elementów internetowych należących do aplikacji w trakcie testowania (AUT) wraz z ich wartościami lokalizatora. W związku z tym za każdym razem, gdy element jest wymagany w skrypcie, wartość lokalizatora można wypełnić z repozytorium obiektów. Repozytorium obiektów służy do przechowywania lokalizatorów w scentralizowanej lokalizacji, zamiast kodowania ich na stałe w skryptach.
W Selenium obiekty mogą być przechowywane w arkuszu Excela, który można wypełnić w skrypcie w razie potrzeby.
To wszystko na teraz.
Mam nadzieję, że w tym artykule znajdziesz odpowiedzi na najczęściej zadawane pytania dotyczące Selenium i WebDriver Interview. Udzielone tutaj odpowiedzi są również pomocne w zrozumieniu podstaw Selenium i zaawansowanych tematów WebDriver.
Czy masz jakieś pytania dotyczące Selenium Interview, na które nie ma tutaj odpowiedzi? Daj nam znać w komentarzach poniżej, a postaramy się odpowiedzieć na wszystkie.
=> To kończy nie tylko ten artykuł, ale całą naszą serię szkoleń dotyczących Selenium. Sprawdź listę WSZYSTKICH ponad 30 samouczków wymienionych na tej stronie . Daj nam znać swoje komentarze i pytania.
rekomendowane lektury
- Pytania i odpowiedzi do wywiadu
- Pytania do wywiadu Spocka z odpowiedziami (najpopularniejsze)
- ETL Pytania i odpowiedzi podczas rozmowy kwalifikacyjnej testującej
- Cucumber Selenium Tutorial: Cucumber Java Selenium Integracja WebDriver
- Często zadawane pytania dotyczące selenu
- Integracja Selenium z JMeter
- Wprowadzenie do Selenium WebDriver - samouczek Selenium # 8
- 50 najpopularniejszych pytań i odpowiedzi do wywiadów CCNA