Как автоматизировать процесс тестирования Строкатый Олег Руководитель отдела тестирования 1С-Битрикс Зачем тестировать? Зачем тестировать? — Снизить количество ошибок — Помочь выпустить качественный продукт — Помочь выпустить продукт в срок — Клиент доволен • Меньше ошибок • Выше удовлетворенность клиента • Меньше затрат на тех. поддержку и доработку и переработку Способы тестирования Способы тестирования —Ручное —Автоматизированное • Unit-тесты • Быстрые автотесты • Сценарные автотесты Плюсы и минусы Плюсы и минусы Ручное Плюсы: — Человек умнее — Человеческий взгляд — Попутная фантазия тестировщика — Человек видит дизайн и удобство использования — Человек видит верстку Минусы: — Низкая скорость — Много времени — Рутинный труд — Усталость — Человеческий фактор Плюсы и минусы Автоматизированное Плюсы: — Высокая скорость работы — Экономия времени — Роботы не устают — Частично исключается человеческий фактор Минусы: — Нужен более квалифицированный/дорогой тестировщик, который умеет программировать — Нужно время на создание тестов — Нужно время на поддержание тестов — Нужен удобный фреймворк — Если фреймворк готовый, то как правило платный Авто-тестирование, роботы Unit-тесты Тестирование кода, API Имеет смысл, если часто меняется API Быстрые автотесты – Проверка всех страниц сайта – Проверка всех компонентов – Быстрые сценарные автотесты Сценарные автотесты Автоматизация планов тестирования Имеет смысл только на больших долгих проектах Планы тестирования Список основных сценариев Отображение задач в шаблонах Лайт и Битрикс 24 Список задач Отображение задач Задач с подзадачами Плоским списком В диаграмме Ганта Поиск задач По названию По id Фильтрация задач Обычный фильтр Расширенный фильтр Работа с задачей в списке Работа выпадающего меню действий над задачей Все пункты Частые ошибки при модерации Fatal error Warning Неверная кодировка Пишем быстрый автотест Что должен уметь робот? — логиниться на сайт — собирать все урлы сайта — проверять контент на ошибочные вхождения — проверять наличие JavaScript-ошибок — логировать действия и найденные ошибки Что нужно для разработки? — Среда разработки — Библиотеки Selenium’a, WebDriver http://docs.seleniumhq.org/download/ — Chromedriver http://code.google.com/p/selenium/wiki/ChromeDriver — Плагин для сбора JavaScript-ошибок Firefox: https://github.com/mguillem/JSErrorCollector Chrome: https://github.com/dharrya/ChromeJSErrorCollector Начнем, пожалуй? Спасибо за внимание Вопросы? Строкатый Олег Руководитель отдела тестирования 1С-Битрикс @ os@bitrix.ru bitrix24.net/strokatyy strokatyy Вела вебинар: Надежда Шикина менеджер по развитию отраслевых решений «1С-Битрикс» ns@1c-bitrix.ru