50 most popularly asked selenium interview questions
В този урок ние изброихме върха 50 най-често задавани въпроса за интервю за Selenium, включително Selenium IDE, Selenium RC, Selenium Grid и Selenium WebDriver въпроси за интервю.
Кратка бележка за тази серия статии от Selenium, преди да преминем към този урок:
Това е последният урок от нашата онлайн серия за обучение от 30+ изчерпателни урока. Надявам се, че всички сте се радвали на тези уроци и сте започнали да се учите от тях. Ако сте нов тук, моля, насочете се към този първи урок в тази серия от обучения.
******************
Вижте и това „ Най-добрият онлайн курс за обучение по селен ”, За да научите инструмента за автоматизация на Selenium от експерт, имащ 10+ години опит в автоматизирането на Selenium.
******************
Топ 50 въпроси и отговори за интервю за селен
Ето ни.
В # 1) Какво е тестване за автоматизация?
Тестване за автоматизация или Тестова автоматизация е процес на автоматизиране на ръчния процес за тестване на приложението / системата, която се тества. Тестването за автоматизация включва използването на отделен инструмент за тестване, който ви позволява да създавате тестови скриптове, които могат да се изпълняват многократно и не изискват никаква ръчна намеса.
В # 2) Какви са предимствата на тестовете за автоматизация?
Предимствата на тестовете за автоматизация са:
- Поддържа изпълнение на повторни тестови случаи
- Помага при тестване на голяма тестова матрица
- Позволява паралелно изпълнение
- Насърчава екзекуцията без надзор
- Подобрява точността, като по този начин намалява генерираните от човека грешки
- Спестява време и пари
В # 3) Защо селенът трябва да бъде избран като инструмент за тестване?
Селен
- е безплатен и с отворен код
- имат голяма потребителска база и помагащи общности
- имат съвместимост с различни браузъри (Firefox, Chrome, Internet Explorer, Safari и др.)
- имат страхотна съвместимост с платформата (Windows, Mac OS, Linux и др.)
- поддържа множество езици за програмиране (Java, C #, Ruby, Python, Pearl и др.)
- има свежи и редовни разработки в хранилището
- поддържа разпределено тестване
В # 4) Какво е селен? Какви са различните компоненти на селен?
Селенът е един от най-популярните комплекти за автоматизирано тестване. Селенът е проектиран по начин, който подкрепя и насърчава тестването за автоматизация на функционални аспекти на уеб-базирани приложения и широк спектър от браузъри и платформи. Поради съществуването си в общността с отворен код, тя се превърна в един от най-приетите инструменти сред специалистите по тестване.
как да играя видео файл matroska -
Селенът не е само един инструмент или помощна програма, а по-скоро пакет от няколко инструмента за тестване и поради същата причина той се нарича Suite. Всеки от тези инструменти е проектиран да обслужва различни изисквания за тестване и тестова среда.
Пакетът пакет включва следните набори от инструменти:
- Интегрирана среда за развитие на селен (IDE) - Selenium IDE е инструмент за запис и възпроизвеждане. Той се разпространява като приставка за Firefox.
- Дистанционно управление на селен (RC) - Selenium RC е сървър, който позволява на потребителя да създава тестови скриптове на желания език за програмиране. Той също така позволява изпълнение на тестови скриптове в широк спектър от браузъри.
- Селен WebDriver - WebDriver е съвсем различен инструмент, който има различни предимства пред Selenium RC. WebDriver директно комуникира с уеб браузъра и използва собствената си съвместимост за автоматизация.
- Решетка от селен - Selenium Grid се използва за разпределяне на вашето тестово изпълнение на множество платформи и среди едновременно.
В # 5) Какви са типовете тестове, които могат да се поддържат от Селен?
Селенът поддържа следните видове тестване:
- Функционално тестване
- Тестване на регресия
В # 6) Какви са ограниченията на селена?
Следват ограниченията на селена:
- Селенът поддържа тестване само на уеб базирани приложения
- Мобилните приложения не могат да бъдат тествани с помощта на селен
- Четците за Captcha и баркод не могат да бъдат тествани с помощта на Selenium
- Отчетите могат да се генерират само с помощта на инструменти на трети страни като TestNG или JUnit.
- Тъй като Selenium е безплатен инструмент, по този начин няма поддръжка на готов доставчик, тъй като потребителят може да намери многобройни помагащи общности.
- Очаква се потребителят да притежава предварително познание за езика за програмиране.
Q # 7) Каква е разликата между Selenium IDE, Selenium RC и WebDriver?
Особеност | ID на селен | Селен RC | WebDriver |
---|---|---|---|
Обработка на сигнали, навигации, падащи менюта | Selenium IDE не предоставя изрично помощни средства за обработка на сигнали, навигации, падащи менюта | Selenium RC не предоставя изрично помощни средства за обработка на сигнали, навигации, падащи менюта. | WebDriver предлага широка гама от помощни програми и класове, които помагат да се справят ефективно и ефективно с предупреждения, навигации и падащи менюта. |
Съвместимост на браузъра | Selenium IDE се предлага като приставка за Firefox, като по този начин поддържа само Firefox | Selenium RC поддържа разнообразна гама от версии на Mozilla Firefox, Google Chrome, Internet Explorer и Opera. | WebDriver поддържа разнообразна гама от версии на Mozilla Firefox, Google Chrome, Internet Explorer и Opera. Също така поддържа HtmlUnitDriver, който е браузър без GUI или без глава. |
Запис и възпроизвеждане | Selenium IDE поддържа функция за запис и възпроизвеждане | Selenium RC не поддържа функция за запис и възпроизвеждане. | WebDriver не поддържа функция за запис и възпроизвеждане |
Изискване към сървъра | Selenium IDE не изисква стартиране на сървър преди изпълнение на тестовите скриптове | Selenium RC изисква сървърът да бъде стартиран преди изпълнението на тестовите скриптове. | WebDriver не изисква стартиране на сървър, преди да изпълни тестовите скриптове |
Архитектура | Selenium IDE е базирана на Javascript рамка | Selenium RC е JavaScript базирана рамка. | WebDriver използва собствената съвместимост на браузъра за автоматизация |
Обектно ориентиран | IDE на Selenium не е обектно ориентиран инструмент | Selenium RC е полуобектно ориентиран инструмент. | WebDriver е чисто обектно ориентиран инструмент |
Динамични търсачи (за намиране на уеб елементи на уеб страница) | IDE на Selenium не поддържа динамични търсачи | Selenium RC не поддържа динамични търсачи. | WebDriver поддържа динамични търсачи |
Тестване на WAP (iPhone / Android) | Selenium IDE не поддържа тестване на приложения за iPhone / Andriod | Selenium RC не поддържа тестване на iPhone / Android приложения. | WebDriver е проектиран по начин, който ефективно да поддържа тестване на приложения за iPhone / Android. Инструментът се предлага с голям набор от драйвери за тестване на базата на WAP. Например AndroidDriver, iPhoneDriver |
Поддръжка на слушатели | Selenium IDE не поддържа слушатели | Selenium RC не поддържа слушатели. | WebDriver поддържа внедряването на слушатели |
Скорост | Selenium IDE е бърз, тъй като е включен в уеб браузъра, който стартира теста. По този начин IDE и браузърът комуникират директно | Selenium RC е по-бавен от WebDriver, тъй като не комуникира директно с браузъра; по-скоро изпраща команди на selenese към Selenium Core, който от своя страна комуникира с браузъра. | WebDriver комуникира директно с уеб браузърите. По този начин го прави много по-бързо. |
В # 8) Кога трябва да използвам ID на Selenium?
IDE на Selenium е най-простият и лесен от всички инструменти в пакета Selenium. Неговата функция за запис и възпроизвеждане го прави изключително лесен за научаване с минимални познания на всеки език за програмиране. IDE на Selenium е идеален инструмент за наивен потребител.
В # 9) Какво е селено?
Selenese е езикът, който се използва за писане на тестови скриптове в Selenium IDE.
Q # 10) Какви са различните видове локатори в Селен?
Локаторът може да бъде наречен като адрес, който идентифицира уеб елемент уникално в рамките на уеб страницата. По този начин, за да идентифицираме уеб елементите точно и точно различни видове локатори в Селен :
- документ за самоличност
- ClassName
- Име
- TagName
- LinkText
- PartialLinkText
- Xpath
- CSS селектор
- РЕШЕНИЕ
Q # 11) Каква е разликата между командите за твърдение и проверка?
Утвърждавам: Командата Assert проверява дали даденото условие е вярно или невярно. Да приемем, че твърдим дали даден елемент присъства на уеб страницата или не. Ако условието е вярно, тогава контролата на програмата ще изпълни следващата тестова стъпка, но ако условието е невярно, изпълнението ще спре и няма да се изпълни допълнителен тест.
Проверете: Командата Verify също така проверява дали даденото условие е вярно или невярно. Независимо дали условието е вярно или невярно, изпълнението на програмата не спира, т.е. всеки отказ по време на проверката няма да спре изпълнението и всички тестови стъпки ще бъдат изпълнени.
В # 12) Какво е XPath?
XPath се използва за намиране на уеб елемент въз основа на неговия XML път. XML означава Extensible Markup Language и се използва за съхраняване, организиране и транспортиране на произволни данни. Той съхранява данни в двойка ключ-стойност, която много прилича на HTML таговете. И двата са езици за маркиране и тъй като попадат под един и същ чадър, XPath може да се използва за намиране на HTML елементи.
Основното зад намирането на елементи с помощта на XPath е обхождането между различни елементи по цялата страница и по този начин дава възможност на потребителя да намери елемент с препратка към друг елемент.
В # 13) Каква е разликата между „/“ и „//“ в Xpath?
Една наклонена черта „/“ - Една наклонена черта се използва за създаване на Xpath с абсолютна пътека, т.е. xpath ще бъде създаден, за да започне селекцията от възела на документа / стартовия възел.
Двойна наклонена черта „//“ - Двойната наклонена черта се използва за създаване на Xpath с относителна пътека, т.е. xpath ще бъде създаден, за да започне селекция от всяко място в документа.
Въпрос # 14) Какво представлява политиката за същия произход и как може да се работи с нея?
Проблемът със същата политика за произход забранява достъпа до DOM на документ от произход, който е различен от произхода, който се опитваме да получим до документа.
Произходът е последователна комбинация от схема, хост и порт на URL адреса. Например за URL адрес https://www.softwaretestinghelp.com/resources/, произходът е комбинация от http, softwaretestinghelp.com, 80 съответно.
По този начин Selenium Core (Програмата на JavaScript) няма достъп до елементите от произход, който е различен от мястото, където е стартиран. Например, ако съм стартирал програмата JavaScript от „https://www.softwaretestinghelp.com“, тогава ще имам достъп до страниците в същия домейн като „https://www.softwaretestinghelp.com/resources “Или„ https://www.softwaretestinghelp.com/istqb-free-updates/ “. Другите домейни като google.com, seleniumhq.org вече няма да бъдат достъпни.
И така, за да се справи със същата политика за произход, беше въведено дистанционно управление Selenium.
Q # 15) Кога трябва да използвам Selenium Grid?
Selenium Grid може да се използва едновременно за изпълнение на едни и същи или различни тестови скриптове на множество платформи и браузъри, за да се постигне разпределено изпълнение на тестове, тестване в различни среди и спестяване на забележително време за изпълнение.
В # 16) Какво имаме предвид под селен 1 и селен 2?
Селенът RC и WebDriver, в комбинация, са популярно известни като Селен 2. Селенът RC сам по себе си се нарича също Селен 1.
В # 17) Кой е най-новият инструмент за селен?
WebDriver
В # 18) Как да стартирам браузъра с помощта на WebDriver?
Следният синтаксис може да се използва за стартиране на браузър:
Драйвер за WebDriver = ново FirefoxDriver ();
Драйвер за WebDriver = ново ChromeDriver ();
Драйвер за WebDriver = ново InternetExplorerDriver ();
В # 19) Какви са различните видове драйвери, налични в WebDriver?
Различните драйвери, налични в WebDriver, са:
- FirefoxDriver
- InternetExplorerDriver
- ChromeDriver
- SafariDriver
- OperaDriver
- AndroidDriver
- IPhoneDriver
- HtmlUnitDriver
В # 20) Какви са различните видове чакания, налични в WebDriver?
Има два видове чакания, налични в WebDriver :
- Неявно чакане
- Изрично изчакайте
Неявно чакане: Неявните изчаквания се използват за осигуряване на време на изчакване по подразбиране (да речем 30 секунди) между всяка последователна тестова стъпка / команда в целия тестов скрипт. По този начин следващата тестова стъпка ще се изпълни само когато 30 секунди са изтекли след изпълнението на предишната тестова стъпка / команда.
Изрично изчакайте: Изричните изчаквания се използват за спиране на изпълнението до момента, в който е изпълнено определено условие или е изтекло максималното време. За разлика от неявните чакания, изричните чакания се прилагат само за определен екземпляр.
Q # 21) Как да пишете в текстово поле с помощта на Selenium?
Потребителят може да използва sendKeys („низ, който трябва да бъде въведен“), за да въведе низа в текстовото поле.
Синтаксис:
Потребителско име на WebElement = drv .findElement (By.id ( 'Електронна поща' ));
// въвеждане на потребителско име
username.sendKeys ( „Sth“ );
Q # 22) Как можете да намерите дали елемент в се показва на екрана?
WebDriver улеснява потребителя със следните методи за проверка на видимостта на уеб елементите. Тези уеб елементи могат да бъдат бутони, кутии за отпадане, квадратчета за отметка, радио бутони, етикети и др
- isDisplayed ()
- isSelected ()
- isEnabled ()
Синтаксис:
isDisplayed ():
булев buttonPresence = driver.findElement (By.id ( 'Вярвам' )). isDisplayed ();
isSelected ():
булев buttonSelected = driver.findElement (By.id ( 'Вярвам' )). isSelected ();
isEnabled ():
булев searchIconEnabled = driver.findElement (By.id ( 'Gbqfb' )). isEnabled ();
Q # 23) Как можем да получим текст на уеб елемент?
Командата Get се използва за извличане на вътрешния текст на посочения уеб елемент. Командата не изисква никакъв параметър, но връща стойност на низ. Това е и една от широко използваните команди за проверка на съобщения, етикети, грешки и др., Показвани на уеб страниците.
Синтаксис:
Текст на низа = driver.findElement (By.id („Текст“)). GetText ();
В # 24) Как да изберете стойност в падащо меню?
Стойността в падащото меню може да бъде избрана с помощта на класа на WebDriver’s Select.
Синтаксис:
selectByValue:
Изберете selectByValue = ново Изберете ( шофьор .findElement (By.id ( “SelectID_One” )));
selectByValue.selectByValue ( „Зелена стойност“ );
selectByVisibleText:
Изберете selectByVisibleText = ново Изберете ( шофьор .findElement (By.id ( “SelectID_Two” )));
selectByVisibleText.selectByVisibleText ( „Лайм“ );
selectByIndex:
Изберете selectByIndex = ново Изберете ( шофьор .findElement (By.id ( “SelectID_Three” )));
selectByIndex.selectByIndex (2);
В # 25) Какви са различните видове навигационни команди?
Следват команди за навигация :
навигация (). назад () - Горната команда не изисква параметри и връща потребителя към предишната уеб страница в историята на уеб браузъра.
Примерен код:
driver.navigate (). back ();
навигация (). напред () - Тази команда позволява на потребителя да премине към следващата уеб страница с препратка към историята на браузъра.
Примерен код:
driver.navigate (). forward ();
navigate (). refresh () - Тази команда позволява на потребителя да опресни текущата уеб страница там, като презареди всички уеб елементи.
Примерен код:
driver.navigate (). refresh ();
навигация (). до () - Тази команда позволява на потребителя да стартира нов прозорец на уеб браузъра и да отиде до посочения URL адрес.
Примерен код:
driver.navigate (). to (“https://google.com”);
В # 26) Как да кликнете върху хипервръзка с помощта на linkText?
Въпроси за интервю за тестване за автоматизация на селен и отговори за опитни
шофьор .findElement (By.linkText ( „Google“ щракнете ();
Командата намира елемента, използвайки текст на връзката и след това щракнете върху него и по този начин потребителят ще бъде пренасочен към съответната страница.
Гореспоменатата връзка може да бъде достъпна и чрез следната команда.
шофьор .findElement (By.partialLinkText ( „Goo“ щракнете ();
Горната команда намира елемента въз основа на подниза на връзката, предоставена в скобата и по този начин парциален LinkText () намира уеб елемента с посочения подниз и след това кликва върху него.
Q # 27) Как да дръжка рамка в WebDriver ?
Вградената абревиатура на рамка като iframe се използва за вмъкване на друг документ в текущия HTML документ или просто уеб страница в уеб страница чрез разрешаване на влагане.
Изберете iframe по id
шофьор .switchTo (). frame ( ' ИД на рамката ' );
Намиране на iframe с помощта на tagName
driver.switchTo (). frame (driver.findElements (By.tagName („iframe”). get (0));
Намиране на iframe с помощта на индекс
рамка (индекс)
driver.switchTo (). frame (0);
кадър (име на кадър)
driver.switchTo (). frame („име на кадъра“);
рамка (елемент WebElement)
Изберете родителски прозорец
driver.switchTo (). defaultContent ();
В # 28) Кога използваме findElement () и findElements ()?
findElement (): findElement () се използва за намиране на първия елемент в текущата уеб страница, съответстващ на посочената стойност на локатора. Обърнете внимание, че ще бъде извлечен само първият съвпадащ елемент.
Синтаксис:
Елемент WebElement = шофьор .findElements (By.xpath ( '// div [@ id = 'example'] // ul // li' ));
findElements (): findElements () се използва за намиране на всички елементи в текущата уеб страница, съответстващи на посочената стойност на локатора. Обърнете внимание, че всички съвпадащи елементи ще бъдат извлечени и съхранени в списъка с WebElements.
Синтаксис:
Списък elementList = шофьор .findElements (By.xpath ( '// div [@ id = 'example'] // ul // li' ));
Q # 29) Как да намерите повече от един уеб елемент в списъка?
Понякога може да срещнем елементи от един и същи тип като множество хипервръзки, изображения и т.н., подредени в подреден или неподреден списък. По този начин има абсолютен смисъл да се бориш с такива елементи с един парче код и това може да се направи с помощта на WebElement List.
Примерен код
// 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 В # 30) Каква е разликата между командата driver.close () и driver.quit?
близо() : Методът close () на WebDriver затваря прозореца на уеб браузъра, върху който потребителят работи в момента, или можем също да кажем прозореца, който в момента е достъпен от WebDriver. Командата нито изисква никакъв параметър, нито връща някаква стойност.
изход () : За разлика от метода close (), методът quit () затваря всички прозорци, които програмата е отворила. Подобно на метода close (), командата нито изисква параметри, нито връща стойност.
В # 31) Може ли Селен да се справи с изскачащи прозорци, базирани на прозорци?
Selenium е инструмент за автоматизиране на тестове, който поддържа само тестване на уеб приложения. Следователно изскачащите прозорци не могат да се обработват с помощта на Selenium.
В # 32) Как можем да се справим с изскачащи прозорци, базирани на уеб?
WebDriver предлага на потребителите много ефективен начин за боравете с тези изскачащи прозорци, като използвате интерфейс за предупреждение . Има четирите метода, които бихме използвали заедно с интерфейса за предупреждение.
- void dismiss () - Методът dismiss () кликва върху бутона „Отказ“ веднага щом се появи изскачащият прозорец.
- void accept () - Методът accept () щраква върху бутона „Ok“ веднага щом се появи изскачащият прозорец.
- String getText () - Методът getText () връща текста, показан в полето за предупреждение.
- void sendKeys (String stringToSend) - Методът sendKeys () въвежда посочения модел на низ в полето за предупреждение.
Синтаксис:
// приемане на предупреждение за javascript
Сигнал за предупреждение = driver.switchTo (). Alert ();
alert.accept ();
В # 33) Как можем да се справим с изскачащи прозорци, базирани на Windows?
Selenium е инструмент за автоматизиране на тестове, който поддържа само тестване на уеб приложения, което означава, че не поддържа тестване на приложения, базирани на Windows. Въпреки това Селенът сам по себе си не може да помогне на ситуацията, но заедно с намеса на трета страна, този проблем може да бъде преодолян. Налични са няколко инструмента на трети страни за работа с изскачащи прозорци, базирани на прозорци, заедно със селена като AutoIT, клас Robot и т.н.
Въпрос # 34) Как да отстоявам заглавието на уеб страницата?
// проверяваме заглавието на уеб страницата
assertTrue („Заглавието на прозореца е неправилно.“, driver.getTitle (). е равно („Заглавие на страницата“));
В # 35) Как да задържите курсора на мишката върху уеб елемент с помощта на WebDriver?
WebDriver предлага широка гама от помощни програми за взаимодействие, които потребителят може да използва за автоматизиране на събития на мишката и клавиатурата. Action Interface е една такава програма, която симулира взаимодействията на един потребител.
По този начин, в следващия сценарий използвахме Action Interface, за да задържим курсора на мишката върху падащо меню, което след това отваря списък с опции.
Примерен код:
// 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();
В # 36) Как да извлечете CSS свойства на елемент?
Стойностите на свойствата css могат да бъдат извлечени с помощта на метод get ():
Синтаксис:
driver.findElement (By.id ( 'документ за самоличност “)). GetCssValue ( „Име на атрибут css“ );
driver.findElement (By.id ( 'документ за самоличност “)). GetCssValue ( 'размер на шрифта' );
В # 37) Как да заснемете екранна снимка в 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')) } }
Q # 38) Какво е Junit?
Джунит е рамка за модулно тестване, въведена от Apache. Junit се основава на Java.
В # 39) Какво представляват анотациите на Junit?
Следват анотациите на JUnit:
- @Тест: Анотацията позволява на системата да знае, че методът, анотиран като @Test, е тестов метод. В един тестов скрипт може да има множество тестови методи.
- @Преди: Методът, анотиран като @Before, дава на системата да знае, че този метод трябва да се изпълнява всеки път преди всеки от тестовите методи.
- @След: Методът, анотиран като @After, дава на системата да знае, че този метод трябва да се изпълнява всеки път след всеки от тестовия метод.
- @BeforeClass: Методът, анотиран като @BeforeClass, позволява на системата да знае, че този метод трябва да бъде изпълнен веднъж преди някой от методите за тестване.
- @След часовете: Методът, анотиран като @AfterClass, дава на системата да знае, че този метод трябва да бъде изпълнен веднъж след някой от методите за тестване.
- @Игнорирай: Методът, анотиран като @Ignore, дава на системата да разбере, че този метод няма да бъде изпълнен.
Q # 40) Какво е TestNG и как е по-добър от Junit?
ТестNG е усъвършенствана рамка, проектирана по начин да се възползват от предимствата както от разработчиците, така и от тестерите. С началото на рамките JUnit придоби огромна популярност в Java приложенията, разработчиците на Java и тестерите на Java със забележително повишаване на качеството на кода. Въпреки че е лесен за използване и ясен, JUnit има свои собствени ограничения, които пораждат необходимостта от въвеждане на TestNG в картината. TestNG е рамка с отворен код, която се разпространява под лиценза за софтуер Apache и е лесно достъпна за изтегляне.
TestNG с WebDriver осигурява ефикасен и ефективен формат на резултатите от теста, който от своя страна може да бъде споделен със заинтересованите страни, за да има поглед върху здравето на продукта / приложението, като по този начин елиминира недостатъка на неспособността на WebDriver да генерира тестови отчети. TestNG има вграден механизъм за обработка на изключения, който позволява на програмата да работи без неочаквано прекратяване.
Има различни предимства, които правят TestNG по-добър от JUnit. Някои от тях са:
- Добавени авансови и лесни пояснения
- Модели за изпълнение могат да се задават
- Едновременно изпълнение на тестови скриптове
- Могат да се зададат зависимости от тестови случаи
Q # 41) Как да задам приоритет на тестовия случай в TestNG?
Задаване на приоритет в TestNG
Кодов фрагмент
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() { } }
Последователност на тестовото изпълнение:
- Метод1
- Метод2
- Метод 3
Q # 42) Какво е рамка?
Рамката е конструктивна комбинация от различни насоки, стандарти за кодиране, концепции, процеси, практики, йерархии на проекти, модулност, механизъм за отчитане, инжектиране на данни от тестове и т.н. за тестване на автоматизация на стълбовете.
Q # 43) Какви са предимствата на рамката за автоматизация?
Предимството на Тестова рамка за автоматизация
- Многократна употреба на кода
- Максимално покритие
- Сценарий за възстановяване
- Евтина поддръжка
- Минимална ръчна намеса
- Лесно отчитане
В # 44) Какви са различните видове рамки?
По-долу са различните видове рамки:
- Модулна базирана рамка за тестване: Рамката разделя цялото „Тествано приложение“ на броя логически и изолирани модули. За всеки модул създаваме отделен и независим тестов скрипт. По този начин, когато тези тестови скриптове са взети заедно, изгражда по-голям тестов скрипт, представляващ повече от един модул.
- Рамка за тестване на архитектура на библиотеката: Основната фундаментална основа зад рамката е да се определят общите стъпки и да се групират във функции в библиотека и да се извикат тези функции в тестовите скриптове, когато е необходимо.
- Data Driven Testing Framework: Data Driven Testing Framework помага на потребителя да отдели логиката на тестовия скрипт и тестовите данни един от друг. Той позволява на потребителя да съхранява тестовите данни във външна база данни. Данните обикновено се съхраняват в двойки „ключ-стойност“. По този начин ключът може да се използва за достъп и попълване на данните в тестовите скриптове.
- Рамка за тестване на ключови думи: Управляваната от ключови думи рамка за тестване е разширение на тестовата рамка, управлявана от данни, в смисъл, че тя не само отделя тестовите данни от скриптовете, но и запазва определения набор от код, принадлежащ на тестовия скрипт, във външен файл с данни.
- Рамка за хибридно тестване: Хибридната рамка за тестване е комбинация от повече от една гореспомената рамка. Най-хубавото при подобна настройка е, че тя използва предимствата на всички видове свързани рамки.
- Рамка за развитие, основана на поведение: Рамката за управление на поведението позволява автоматизиране на функционалните проверки в лесно четим и разбираем формат за бизнес анализатори, разработчици, тестери и др.
В # 45) Как мога да чета тестови данни от Excel?
директиви на препроцесор в c ++ с пример
Данните от теста могат ефективно да се четат от Excel, използвайки JXL или POI API. Вижте подробен урок тук .
Q # 46) Каква е разликата между POI и jxl jar?
# JXL буркан POI буркан 1 JXL поддържа “.xls” формат, т.е. двоичен формат. JXL не поддържа Excel 2007 и формат .xlsx, т.е. XML формат POI буркан поддържа всички тези формати две JXL API е актуализиран за последно през 2009 година POI редовно се актуализира и пуска 3 Документацията за JXL не е толкова изчерпателна, колкото тази на POI POI разполага с добре подготвена и изключително изчерпателна документация 4 JXL API не поддържа форматиране на богат текст POI API поддържа форматиране на богат текст 5 JXL API е по-бърз от POI API POI API е по-бавен от JXL API
Q # 47) Каква е разликата между селен и QTP?
Особеност Селен Професионален бърз тест (QTP) Съвместимост на браузъра Селенът поддържа почти всички популярни браузъри като Firefox, Chrome, Safari, Internet Explorer, Opera и т.н. QTP поддържа Internet Explorer, Firefox и Chrome. QTP поддържа само операционна система Windows Разпределение Селенът се разпространява като инструмент с отворен код и е свободно достъпен QTP се разпространява като лицензиран инструмент и се комерсиализира Заявление под тест Селенът поддържа тестване само на уеб базирани приложения QTP поддържа тестване както на уеб базирано приложение, така и на базирано на Windows приложение Хранилище на обекти Хранилището на обекти трябва да бъде създадено като отделен обект QTP автоматично създава и поддържа Object Repository Езикова поддръжка Селенът поддържа множество езици за програмиране като Java, C #, Ruby, Python, Perl и др QTP поддържа само VB Script Поддръжка на доставчик Тъй като Selenium е безплатен инструмент, потребителят няма да получи подкрепата на доставчика при отстраняване на проблеми Потребителите могат лесно да получат поддръжката на доставчика в случай на някакъв проблем
В # 48) Може ли WebDriver да тества мобилни приложения?
WebDriver не може да тества мобилни приложения. WebDriver е уеб-базиран инструмент за тестване, поради което приложенията в мобилните браузъри могат да бъдат тествани.
Q # 49) Може ли captcha да се автоматизира?
Не, четецът на captcha и баркод не може да бъде автоматизиран.
В # 50) Какво представлява хранилището на обекти? Как можем да създадем хранилище на обекти в Selenium?
Object Repository е термин, използван за означаване на колекцията от уеб елементи, принадлежащи към Application Under Test (AUT), заедно с техните локаторни стойности. По този начин, когато елементът се изисква в скрипта, стойността на локатора може да се попълни от хранилището на обекти. Object Repository се използва за съхраняване на локатори в централизирано местоположение, вместо да ги кодира твърдо в скриптовете.
В Selenium обектите могат да се съхраняват в Excel лист, който може да се попълва в скрипта, когато е необходимо.
Това е всичко за сега.
Надявам се в тази статия да намерите отговори на най-често задаваните въпроси за интервю за Selenium и WebDriver. Отговорите, предоставени тук, също са полезни за разбиране на основите на Selenium и разширените теми на WebDriver.
Имате ли въпроси за интервю за Selenium, на които тук няма отговор? Моля, уведомете ни в коментарите по-долу и ние ще се опитаме да отговорим на всички.
=> С това завършва не само тази статия, но и пълната ни поредица от обучения за Селен. Проверете списъка с ВСИЧКИ 30+ урока, изброени на тази страница . Моля, уведомете ни за вашите коментари и въпроси.
Препоръчително четене
- Въпроси и отговори за интервюта
- Спок интервю въпроси с отговори (Най-популярни)
- Въпроси и отговори за интервю за ETL тестване
- Урок за краставици селен: Интеграция на краставица Java Selenium WebDriver
- Често задавани въпроси за селен
- Интеграция на селен с JMeter
- Въведение в Selenium WebDriver - Урок № 8 за селен
- Топ 50 на най-популярните въпроси и отговори за интервю за CCNA