Представляю вам перевод моей статьи на Medium.com.
Selenium сегодня является стандартом де-факто для автоматизации выполнения тестов в браузерах. Все популярные браузеры поддерживаются из коробки, а архитектура хорошо известна. Существуют даже компании, предоставляющие Selenium за деньги. Но удобен ли обычный Selenium сервер для локальной отладки тестов?
Проблема
Как веб-разработчик или инженер по автоматизации тестирования вы можете столкнуться со следующими неудобствами при работе со стандартным Selenium сервером:
1. Нужно устаналивать несколько разных браузеров себе на компьютер. В обычной жизни вы, как правило, используете один браузер, например, Chrome, но вам приходится устанавливать себе Firefox и Opera, чтобы отлаживать в них Selenium-тесты. 2. Трудно устанавливать и использовать несколько версий одного браузера. Если вы устанавливаете браузер из пакетов, то вообще можно иметь только одну установленную версию. Кроме того Selenium и его веб-драйверы обычно ищут исполняемый файл браузера по определенному пути. Поэтому, поверьте, использовать несколько версий может быть трудной задачей. 3. Если вы запускаете браузер, установленный в вашей операционной системе — он забивает место на диске своими временными файлами и содержимым кеша.
@Test()
public void checkLogoLink() {
// WebDriverWait wait = new WebDriverWait(driver, 5);
//wait.until(ExpectedConditions.visibilityOfElementLocated(By.name("username")));
driver.findElement(By.name("username"));
}
выдает (если юзаю вэйт):
org.openqa.selenium.TimeoutException: Expected condition failed: waiting for visibility of element located by By.name: username (tried for 5 second(s) with 500 MILLISECONDS interval)
или (если просто файнд)
org.openqa.selenium.NoSuchElementException: No such element (WARNING: The server did not provide any stacktrace information)
пробовал тоже самое на страницах VK или Яндекс - всё ок.
В современном мире бизнес всё чаще обращает внимание на мобильные технологии. Появляются новые возможности для развития, а рынок мобильных устройств растёт гораздо быстрее рынка домашних компьютеров. И вместе с рынком растет и спрос на тестировщиков мобильных приложений.
Однако разработка мобильного ПО - область новая и очень динамичная. В ней, помимо проблем, типичных для IT, каждый день появляются новые вызовы. К тому же сами инструменты для разработки и тестирования находятся ещё на стадии развития, поэтому тоже имеют свои проблемы.
Опыт тестирования Desktop и Web приложений, несомненно, применим и в мобильной отрасли, однако нужно знать и понимать особенности, с которыми придётся столкнуться: наличие сенсоров и датчиков, постоянную работу системы, управление тачскрином и прочее.
Во время тренинга тренер поделится личным опытом организации тестирования мобильных приложений, выбора устройств и построения тестовых стратегий. Отдельный акцент будет сделан на работе с платформой Android, как с наиболее распространённой мобильной ОС на данный момент.