Как и многие другие стартапы в наших проектах, в первый год существования родились горы кода, которые хоть и были неплохо покрыты unit-тестами, но всё же оставались практически не охвачены с точки зрения функционального тестирования. В первое время мы обходились небольшим чек-листом. Проблем не возникало, пока на проекте было несколько тестировщиков, хорошо знающих все тонкости проекта. Но, как это всегда бывает, если один человек из небольшой команды уходит, то необходимо найти ему адекватную замену. И вот тут возникли большие трудности.
Читать полностью »
Рубрика «тестирование веб-приложений» - 5
TestLink — боль и слёзы тестировщика или панацея? Опыт внедрения
2014-08-25 в 7:38, admin, рубрики: тестирование, тестирование веб-приложенийDalek.js — простое функциональное тестирование веб-приложений
2014-08-05 в 16:03, admin, рубрики: dalek.js, javascript, JS, nodejs, Веб-разработка, тестирование, тестирование веб-приложений, фронтендВы знаете, что такое Selenium и/или PhantomJS? И с чем их едят? Тогда, возможно, вам будет интересен проект Dalek.js — кроссбраузерная утилита для тестирования веб-приложений.
Dalek.js позволяет писать тесты, которые ходят по веб-страничкам, щелкают ссылки, заполняют формы, отправляют данные и делают скриншоты. То же самое и даже больше делают тесты, написанные с использованием Selenium'а или Phantom.js, в чем подвох?
Yii, непрерывная интеграция — как не сломать все
2013-08-23 в 18:56, admin, рубрики: continuous integration, php, phpunit, selenium, yii, Проектирование и рефакторинг, тестирование, тестирование веб-приложений, метки: continuous integration, PHP, phpunit, selenium, yii, тестирование веб-приложенийМы часто экспериментируем с архитектурой, кодом, производительностью. Постоянно добавляем новый функционал. Мы постепенно обвязываем Yii своей “архитектурной” прослойкой — шардинг, работа с временно недоступными данными, разнообразные кеши и многое другое. Да, плод нашей работы, когда он будет заврешен, пойдет в Open Source.
Задача применяемой у нас Непрерывной Интеграции (Continuous Integration, CI) — не тестирование. Задача CI — обезопасится от разрушительных изменений в следствие рефакторинга, добавления нового функционала, изменений архитектуры. Также мы защищаемся от “плохого кода”, часто повторяющихся багов, “кривых” merge.
Для своего CI мы используем Jenkins под Debian. Время на развертку CI я затратил 12 часов — до полностью рабочего состояния. На поддержку CI я не трачу ни минуты в день — я не пишу тесты на каждую мелочь, не практикую TDD. Тем не менее, CI работает и спасает нас от глупых ошибок.
“Давайте будем внимательней”/”Давайте не делать ошибок” — взывал я к разработчикам, но это помогало лишь временно и то не на все 100%. Людям свойственно ошибаться, забывать, совершать оплошности. Нет, я не изобрел “серебряную пулю” для web-проектов и даже маленьку пульку для Yii — я придумал как стабилизировать свое приложение. Ваше приложение отличается от моего и мои методы у Вас могут не работать, да и не должны — я же делал их не для Вашего приложения, если мои методы работаю у Вас — примите это как чудо или как везение. Зато идея такого CI будет работать везде. Всего лишь идея.
Использование Selenium WebDriver для автоматического тестирования веб-интерфейса Яндекс.Почты
2013-03-22 в 7:38, admin, рубрики: mocha, node.js, selenium-webdriver, Блог компании Яндекс, тестирование, тестирование веб-приложений, метки: mocha, node.js, selenium-webdriver, тестирование веб-приложений Без качественного тестирования невозможно разрабатывать и поддерживать крупный веб-сервис. На ранних этапах его развития часто можно обходиться только ручным тестированием по заданному тест-плану, но с появлением новых фич и увеличением количества тест-кейсов довольствоваться только им становится все сложнее и сложнее. В этой статье мы расскажем о том, как автоматизируем функциональное тестирование веб-интерфейса Яндекс.Почты с помощью Selenium WebDriver и Node.js.
Читать полностью »
Selenium 2.0 — WebDriver. Впечатления, проблемы и советы по использованию
2013-03-05 в 13:14, admin, рубрики: java, selenium 2.0, webdriver, Песочница, разработка, тестирование, тестирование веб-приложений, метки: java, selenium 2.0, webdriver, тестирование веб-приложенийВведение
Последние три месяца мне пришлось работать с Selenium 2.0 (WebDriver).
В данной статье я опишу свои впечатления, мысли и опыт, который я приобрел.
Так же я опишу основные действия, которые чаще всего вызывают проблемы и покажу наиболее удачные решения, которые я смог реализовать для них. Возможно есть более правильные подходы — буду рад если оставите их в комментариях.
Читать полностью »
Тестирование выгрузки 200 000 товаров на сайт из 1С
2012-12-20 в 11:22, admin, рубрики: 1С-Битрикс, ERP-системы, web-разработка, Интеграция с 1С, разработка, тестирование веб-приложений, тестирование сайтов, метки: web-разработка, Интеграция с 1С, тестирование веб-приложений, тестирование сайтов
В одном из проектов перед нами стояла задача выгрузки из 1С на сайт большого количества товаров с периодичностью 2 раза в день. Хотим поделиться опытом, полученным при проведении нагрузочного тестирования проекта.
Читать полностью »
Тестирование в Яндексе. Фреймворк HTML Elements: чего не хватает в Page Object, и как это исправить
2012-11-16 в 9:05, admin, рубрики: java, page object, selenium, webdriver, Yandex QA Tools, тестирование веб-приложений, яндекс, метки: java, page object, selenium, webdriver, Yandex QA Tools, тестирование веб-приложений, яндексЕсли вы занимаетесь тестированием веб-интерфесов, то наверняка задумывались о том, как сделать взаимодействие с веб-страницами в тестах максимально удобным. Среди тестировщиков очень широко известен шаблон проектирования Page Object. Но, несмотря на множество плюсов, у этого подхода есть и некоторые недостатки, которые сильно затрудняют его применение.
Наиболее существенные из них:
- невозможность повторного использования кода page-объектов для страниц с одинаковыми элементами;
- плохая читаемость и отсутствие наглядности кода для страниц с большим количеством элементов;
- отсутствие типизации элементов.
Из этого поста вы узнаете, как мы в Яндексе решаем эти проблемы с помощью фреймворка с открытым исходным кодом HTML Elements. Он расширяет концепцию шаблона Page Object и позволяет сделать взаимодействие с элементами на веб-страницах простым, гибким и удобным.
Мы не будем останавливаться на описании самого паттерна и его принципов, поскольку большинству из вас он наверняка хорошо знаком. Если же кто-то с ним не встречался, то узнать о нём можно из этого поста или мастер-класса. Также, говоря о применении паттерна Page Object, мы будем подразумевать его Java-реализацию в фреймворке Selenium WebDriver.
Повторное использование кода
Представьте, что вам понадобилось написать тесты не на какую-то отдельную страницу, а на весь веб-сервис. На его страницах наверняка будут встречаться общие блоки элементов: хедеры, футеры, возможно, какие-то одинаковые формы и т.д. Например, на главной странице Яндекса есть форма поиска, которая сохраняется и при переходе на страницу с поисковой выдачей.
CircleCI — обзор нового сервиса Continuous Integration
2012-06-15 в 6:09, admin, рубрики: continious integration, continuous integration, tdd, Веб-разработка, непрерывная интеграция, тестирование веб-приложений, метки: continious integration, continuous integration, tdd, непрерывная интеграция, тестирование веб-приложений «Вы тестируете? — Возможно.
Все мы согласны, что тестирование – отличная штука, но в реальности доставляет много проблем. В настоящий момент мы занимаемся beta-тестированием партнерского CI сервиса, который предназначен для того, чтобы делать за вас всю тяжелую работу.
Мы работаем над созданием удивительного сервиса CI! Только представьте, что вы сможете использовать исключения для автоматизированного создания тестов! Да, мы работаем над этим!
Ответьте на это сообщение для получения доступа к beta-версии.»
— примерно такие слова в моем вольном переводе с английского я прочитал, зайдя однажды на всем известный airbrakeapp.com, чтобы посмотреть, какие ошибки успели найти юзеры в наших приложениях за ночь.
Читать полностью »
Опубликован перевод документации по Selenium
2012-03-22 в 7:05, admin, рубрики: selenium, webdriver, автоматизация тестирования, тестирование, тестирование веб-приложений, метки: selenium, webdriver, автоматизация тестирования, тестирование веб-приложенийНаконец-то мы завершили и опубликовали перевод на русский язык документации по инструменту Selenium, пожалуй, наиболее популярному в последнее время инструменту автоматизации тестов для веб-приложений.
Русская версия в определенном смысле даже лучше, чем оригинальная, потому что в нее включены дополнительные главы, скомпилированные из статей в Selenium Wiki, которые заполняют «белые пятна», имеющиеся в официальном руководстве пользователя.
Мы надеемся, что теперь, благодаря преодолению языкового барьера, число поклонников Selenium будет расти ещё быстрее, и мы будем рады видеть Вас в наших рядах!
(Под катом — благодарности спонсорам и участникам проекта по переводу)
Читать полностью »