what is headless browser
Този урок обяснява какво е браузър без глава, неговите предимства, примери и тестване на браузър без глава със селен. Също така ще научите за HtmlUnitDrvier:
През последните няколко години видяхме, че мрежата се еволюира от прости до силно усъвършенствани уеб сайтове, изградени с красив потребителски интерфейс. Накратко, в днешно време JavaScript контролира мрежата изключително добре, така че да може да се справи с почти всяко взаимодействие на уебсайтове.
Днес можем да видим, че браузърите са толкова ефективни, че могат лесно да разберат как да обработват JavaScript. В координация с JavaScript браузърът се грижи програмно. Безглавите браузъри се считат за много полезни за тестване на уеб браузъри, тъй като подобряват нашите усилия.
въпроси и отговори за интервю за ръчно тестване за 3-годишен опит
Какво ще научите:
- Какво е браузър без глава?
- Заключение
Какво е браузър без глава?
Без глава - О, да, добре сте го прочели. Без глава, означава уеб браузър без потребителски интерфейс. За да се разработи, Безглавите браузъри са тези, които всъщност имат достъп до уеб страницата, но GUI е скрит от потребителя.
Браузърът без глава е точно като всеки друг браузър, единствената разлика е, че не можем да видим нищо на екрана. Тук можем да кажем, че програмата действително работи в бекенда и нищо не може да се види на екрана. По този начин е известно, че е този без Head / GUI.
Подобно на обикновения браузър, браузърът без глава изпълнява всички функции като щракване върху връзки, навигация по страници, изтегляне на документа, качване на документ и т.н., като изпълнява всички инструкции според нашата програма.
Нормалният браузър ще продължи с всяка стъпка на програмата с презентация с GUI, докато за браузъра без глава всички стъпки на програмата се извършват последователно и правилно и ние можем да я проследим с помощта на конзола или команда- линеен интерфейс.
Предимства на браузъра без глава
# 1) Безглавите браузъри се използват, когато машината няма графичен интерфейс, т.е. докато се използва Linux (операционна система без графичен интерфейс) се изпълнява чрез интерфейса на командния ред и всъщност няма интерфейс за показване.
# две) Също така, те могат да се използват в случай, че няма нужда да гледате нищо и нашата цел е само да гарантираме, че всички тестове се изпълняват успешно линия по линия.
# 3) Когато има нужда от изпълнение на паралелни тестове, браузърите, базирани на потребителски интерфейс, консумират много памет и / или ресурси. Следователно, тук се предпочита браузърът без глава.
# 4) Ако искаме да извършим тестване на регресия за следващите издания с непрекъсната интеграция и приключим с тестването на кръстосани браузъри, тогава може да се използва тестване на Headless браузър.
# 5) Ако искаме да симулираме множество браузъри на една машина или изпълняваме тестови случаи само за създаване на данни, тогава използваме браузъри без глава.
# 6) В сравнение с реалните браузъри, Безглавите браузъри са по-бързи. И така, те са избрани за по-бързо изпълнение.
Недостатъци на браузъра без глава
# 1) Въпреки че безглавите браузъри са много бързи, все пак има и някои недостатъци. Поради способността си за по-бързо зареждане на страници, понякога е трудно да отстраните грешките.
# две) Реалното тестване на браузър включва извършване на тестови случаи в присъствието на GUI. Освен това тези тестове се извършват пред потребителя, поради което потребителят може да взаимодейства с екипа, като се позовава на графичния интерфейс и обсъжда къде са необходими промени или корекции. В такъв случай браузъри без глава не могат да се използват.
# 3) Тъй като браузърите без глава не представляват графичен потребителски интерфейс, е трудно да се докладват грешки с помощта на екранни снимки. Реалният браузър помага да се представят дефектите, като се генерират екранни снимки, тъй като екранните снимки са задължителни при тестването.
# 4) В случай, че се изисква много отстраняване на грешки в браузъра, използването на Безглави браузъри може да бъде предизвикателство.
Примери за безглави браузъри
Налични са различни браузъри без глава.
swf файлове, които не се възпроизвеждат в браузъра
По-долу са дадени някои примери:
- Html браузъри за единица
- Firefox
- Chrome
- PhantomJS
- Zombie.js
- TrifleJS
- SlimerJS
- Пляскане
- SimpleBrowser
- NodeJS
Тестване без глава със селен
Селенът е безплатен инструмент за тестване с отворен код. Това е доста добре познат и ефективен инструмент за автоматизация за извършване на тестове за автоматизация.
Selenium ни позволява да пишем тестови скриптове на различни езици като Java, Python, C #, Ruby, Perl, Scala и др., Като поддържа множество браузъри като Firefox, Chrome, Internet Explorer, Opera, Safari и др., И е в състояние да работи на Windows , Linux и macOS.
Selenium Webdriver осигурява добра поддръжка на динамични уеб страници, където различни уеб елементи се променят, без самата страница да бъде презаредена.
Безглав Chrome и Firefox
И двете Firefox, както и браузърите Chrome, поддържат тестване за автоматизация без глава, което е изпълнение на кода във Firefox и Chrome без GUI.
Пример за Firefox без глава
Headless Firefox предоставя поддръжка за версии, започващи от 56 и е наличен за Windows, Linux и macOS. Трябва да изтеглим файла geckodriver.exe на най-новата версия на Firefox и да гарантираме, че версията, която ще използваме, е по-голяма от минимално поддържаната версия. Firefox работи в режим без глава чрез метода headless ().
Нека да видим кода за браузъра Firefox в режим без глава:
package headless_testing; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class HeadlessFirefox { public static void main(String() args) { // TODO Auto-generated method stub System.setProperty('webdriver.gecko.driver',' E://Selenium/latest firefox exe/geckodriver.exe'); FirefoxOptions options = new FirefoxOptions(); options.setHeadless(true); WebDriver driver = new FirefoxDriver(options); driver.get('www.google.com/'); System.out.println('Executing Firefox Driver in Headless mode..
'); System.out.println('>> Page Title : '+driver.getTitle()); System.out.println('>> Page URL : '+driver.getCurrentUrl()); } }
При изпълнението на горния код за браузъра Firefox в режим без глава се показват заглавието на страницата и нейният URL адрес. Кодът се изпълнява в режим без глава и може да бъде проследен на конзолата.
Точно както Headless Firefox се поддържа от Selenium, той работи и на SlimmerJS и W3C WebDrier.
Пример за Chrome без глава
Безглавият Chrome осигурява поддръжка за Chrome версии 60 и по-нататък и е достъпен за Windows, Linux и macOS. Трябва да изтеглим .exe файла на най-новата версия на браузъра Chrome.
По-долу е даден синтаксисът за използване на Chrome в режим без глава:
ChromeOptions options = new ChromeOptions(); options.addArguments(“--headless”); OR options.setHeadless(true);
Нека да видим кода за браузъра Chrome в режим без глава:
package headless_testing; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; public class HeadlessChrome { public static void main(String() args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver','E://Selenium/latest chrome exe/chromedriver.exe'); ChromeOptions options = new ChromeOptions(); options.addArguments('--headless'); WebDriver driver = new ChromeDriver(options); driver.get('www.google.com/'); System.out.println('Executing Chrome Driver in Headless mode..
'); System.out.println('>> Page Title : '+driver.getTitle()); System.out.println('>> Page URL : '+driver.getCurrentUrl()); } }
При изпълнението на горния код за браузъра Chrome в режим без глава се показват заглавието на страницата и нейният URL адрес. Кодът се изпълнява и изпълнението може да бъде проследено на конзолата.
Безглав HtmlUnitDriver
Какво е HtmlUnitDriver?
HtmlUnitDriver е уеб браузър без глава, написан на Java. Името предполага, че това е драйвер без глава, който е базиран на HtmlUnit. HtmlUnitDriver е вграден браузър без глава в Selenium WebDriver. Счита се за най-лекия и бърз браузър.
Нека да преминем към внедряването на HtmlUnitDriver. JT файловете на HtmlUnitDriver могат да бъдат изтеглени от официалния уебсайт на Selenium.
HtmlUnitDriver в режим без глава
Подобно на всички други браузъри, и за HtmlUnitDriver трябва да създадем обект за класа, който да изпълнява кода в режим без глава.
package headless_testing; import org.openqa.selenium.WebDriver; import org.openqa.selenium.htmlunit.HtmlUnitDriver; public class HtmUnitDriver { public static void main(String() args) { // TODO Auto-generated method stub WebDriver driver = new HtmlUnitDriver(); driver.get('https://www.google.com/'); System.out.println('Executing HtmlUnitDriver in Headless mode..
'); System.out.println('>> Page Title : '+ driver.getTitle()); System.out.println('>> Page URL : '+ driver.getCurrentUrl()); } }
По този начин при изпълнение на горния код за HtmlUnitDriver в режим без глава, получените резултати показват заглавието на страницата и нейния URL адрес. Изходът се получава през конзолата, където всички функции, изпълнявани в програмата, могат да бъдат разглеждани поетапно.
По-долу е дадена екранната снимка на изпълнения по-горе код:
Характеристики / предимства на HtmlUnitDriver
java спокойни уеб услуги интервю въпроси
(изображение източник )
- Осигурява поддръжка за HTTPS и HTTP протоколи.
- Страхотна поддръжка за JavaScript.
- Помага при многозадачност, като по този начин позволява провеждането на множество тестове.
- Осигурява поддръжка за бисквитки. Също така поддържа прокси сървъри.
- Подобрява производителността и скоростта на тестовите скриптове, тъй като има най-бързото изпълнение на WebDriver.
- HtmlUnitDriver е независим от платформата.
- Тъй като по подразбиране е без глава, той поддържа тестване без глава.
Недостатъци на HtmlUnitDriver
- Използването на HtmlUnitDriver не е възможно за сложни уебсайтове.
- Въпреки че се сравнява с реално тестване на браузър, за браузъри без глава като HtmlUnitDriver става много трудно за отстраняване на грешки в скрипта.
- Генерирането на екранни снимки не е възможно с HtmlUnitDriver.
- Безглавите браузъри подражават на други браузъри.
Заключение
Тестването на браузъри без глава всъщност е по-бързо, като осигурява голяма скорост и ефективност, но не успява да достигне до някои специфични функции, които наистина се изпълняват от браузъри без глави / реални.
Безглавият браузър има свои предимства, докато Real Browser има свои собствени. Според необходимостта от тестване, човек може да избере коя техника е за предпочитане и полезна за тестера.
Например: В случай, че има участие на потребител, може да се избере тестване на Real Browser. Ако няма изисквания за представяне на потребителския интерфейс за бързо извършване на тестването, тогава може да се премине към тестване на Headless Browser.
По-ефективно тестване би било това с комбинация както от Headless, така и от Real Browser. По този начин се преодоляват ограниченията на всеки поотделно.
Надявам се, че този урок ще изясни всички ваши запитвания за тестване на браузър без глава и тестване на браузър без глава !!
Препоръчително четене
- Урок за Geb - Тестване за автоматизация на браузъра с помощта на Geb Tool
- Parrot QA Tutorial: Преглед на инструмента за функционално тестване на различни браузъри
- Урок за Browserstack: Платформа за тестване на приложения и браузъри (GUIDE)
- Урок за IE Tester - Тестване на браузър Internet Explorer онлайн
- Тестване на зареждане с реални браузъри, използващи Tricentis Flood Element
- Урок за селенова мрежа: Настройка и пример за тестване на различни браузъри
- Топ 10 инструменти за тестване на различни браузъри през 2021 г. (най-новото класиране)
- Какво е тестване на кръстосани браузъри и как да се извърши: Пълно ръководство