Автор: Энди Найт (Andy Knight) Оригинал статьи Перевод: Ольга Алифанова Одна из самых больших проблем на пути становления отличным автоматизатором – это практика. Тестирование – это настолько же искусство, насколько и наука. Определение, где добавлять явные ожидания, как создавать устойчивые локаторы, и почему нужно проверять этот элемент, а не другой, требует времени. Обучение также требует наличия приложений со специфическими элементами или конечными точками, чтобы проверить определенные операции. К сожалению, при огромном количестве ресурсов по обучению автоматизации (вроде Test Automation University) количество публичных демо-сайтов, на которых можно попрактиковаться, практически ничтожно. Я с трудом нашел нравящиеся мне, и люди часто просят меня порекомендовать такие площадки.
Какие демо-сайты стоит использовать?
Ниже – список демо-сайтов, найденных мной через онлайн-поиск или рекомендации друзей. Многие из них входят в другие списки "Топ-N сайтов для тестирования". Мой список создан не только с целью сбора ссылок на популярные демо-сайты, но и как рекомендация по их использованию.
Типы сайтов:
- Web UI – выглядит как реальный веб-сайт
- Web UI элементы – обучающие страницы, демонстрирующие типы веб-элементов
- Mobile UI – выглядит как реальный мобильный сайт
- API – публичный API для тестирования
- DIY – "сделай сам", нужно создать и настроить сайт самостоятельно
Демо-сайт
|
Тип
|
Описание
|
ParaBank
|
Web UI, API
|
Онлайн-банк от Parasoft с логином и REST/SOAP API. Если вы запускаете продукт локально, используя исходный код, можно получить доступ к базе данных.
|
Restful Booker
|
Web UI, API
|
Онлайн-сайт для бронирования гостиниц от Марка Уинтерингэма. Фронтэнд – приложение React (код), а бэкэнд – REST API (код)
|
Automation Practice Website
|
Web UI
|
Базовый онлайн-магазин с опциональным логином от SeleniumFramework.com. Отличный сайт для примеров тестов web UI.
|
Demoblaze
|
Web UI
|
Базовый онлайн-магазин с опциональным логином от BlazeMeter. Отличный сайт для примеров тестов web UI.
|
Swag Labs
|
Web UI
|
Базовый онлайн-магазин с обязательным логином от Sauce Labs. Отличный сайт для примеров тестов web UI.
|
Applitools demo site
|
Web UI
|
Небольшой сайт со страницей логина и домашней страницей от Applitools. Сравните со второй версией для визуального тестирования.
|
Automation Bookstore
|
Web UI
|
Одностраничный сайт для динамического поиска книг. Хорош для тестирования отзывчивой верстки в коротких демо.
|
JPetStore Demo
|
Web UI
|
Магазин домашних животных от MyBatis на основе MyBatis 3, Spring 3, и Stripes (код).
|
GlobalSQA Banking Project
|
Web UI
|
Базовое банковское приложение с логином через выпадающее меню и простыми страничками от GlobalSQA.
|
Gatling Computers Database
|
Web UI
|
Одностраничный сайт от Gatling, с пронумерованным многостраничным списком моделей компьютеров. Список можно фильтровать и добавлять новые компьютеры.
|
CandyMapper
|
Web UI
|
Сайт на тему Хэллоуина от Пола Гроссмана со страшными багами. Есть также вторая версия, исправленная.
|
OWASP Juice Shop
|
DIY Web UI
|
Тестовый сайт, полностью написанный на JavaScript с использованием Node.js, Express и Angular. Специально создан для тестирования проблем безопасности.
|
Cypress Real-World App
|
DIY Web UI
|
Муляж приложения оплаты от Cypress, предназначенный для демонстрации реального Cypress-тестирования. Можно использовать для других задач.
|
RealWorld example apps
|
DIY Web UI
|
Одно демо-приложение, внедренное на разных языках и фреймворках. Не создано для тестирования, но может для него использоваться.
|
the-internet
|
Web UI элементы
|
Сайт от Дейва Хеффнера и Elemental Selenium с рядом четких примеров веб-элементов и взаимодействий.
|
Selenium Test Pages
|
Web UI элементы
|
Сайт с несколькими страничками, дающими более глубокие примеры по сравнению с the-internet.
|
LetCode
|
Web UI элементы
|
Набор очень чистых страниц с видеоматериалами, объясняющими, как автоматизировать взаимодействия.
|
DemoQA
|
Web UI элементы
|
Сайт для практики от ToolsQA, включающий страницы для элементов, форм, фреймов, взаимодействий, и даже небольшой книжный магазин.
|
Ultimate QA Automation Practice
|
Web UI элементы
|
Набор богатых для практики страниц от Ultimate QA.
|
UI Test Automation Playground
|
Web UI элементы
|
Набор обучающих страниц с элементами, с которыми можно взаимодействовать, от команды Rapise.
|
SelectorsHub Practice Page
|
Web UI элементы
|
Страница для практики от SelectorsHub для взаимодействия с различными типами веб-элементов.
|
WebDriverUniversity.com
|
Web UI элементы
|
Еще один набор обучающих страниц с элементами, с которыми можно взаимодействовать.
|
Sauce Labs Native Sample Application
|
DIY Mobile UI
|
Мобильное приложение от Sauce Labs для Android и iOS, очень похожее на сайт Swag Labs.
|
JSONPlaceholder
|
API
|
Публичный REST API для генерации фейковых данных из набора предопределенных источников. Следуйте руководству, чтобы узнать, как делать запросы.
|
Swagger Petstore
|
API
|
Публичный REST API от Swagger для тестирования CRUD-операций над данными магазина домашних животных.
|
Public APIs
|
API
|
Длинный список публичных API, которые можно использовать для тестирования.
|
Device Registry Service
|
DIY API
|
Flask-приложение, которое я разработал для обучения тестированию REST API. Включает приложение и автоматизированные API-тесты, которые можно локально запускать.
|
Best Buy API Playground
|
DIY API
|
Демо-сервис REST API на основе JavaScript от Best Buy.
|
Мои рекомендации
Выше перечислено очень много сайтов. Ниже – те, которые рекомендую лично я.
Конечно, остальные сайты тоже хороши, поэтому они и попали в список!
Зачем морочиться с "муляжами" сайтов?
Возможно, вы задаетесь вопросом, зачем нам демо-сайты. Почему бы просто не использовать настоящие сайты? Демо-сайты и "муляжи" сайтов соответствуют ряду потребностей, которые не покрываются реальными сайтами:
- Демо-сайты постоянны. Они внедрены определенным способом и затем не меняются. Можно быть уверенным, что тесты всегда сработают на них.
- Демо-сайты зачастую проще реальных сайтов. Они не так пугают новичков.
- Демо-сайты иногда создаются для обучения. Если они часть обучающего материала, автор может добавлять туда функции для демонстрации определенных концепций.
- Демо-сайты безопаснее для публикаций статей, обучающих материалов и книг. Письмо статично, поэтому любые сайты, на которые ссылается книга, тоже должны быть статичными. Реальные сайты изменчивы.
- Реальные сайты могут требовать принять пользовательское соглашение, запрещающее автоматизированные запросы. Некоторые даже душат или блокируют запросы, если подозревают, что они отправлены "ботом".
- Реальные сайты также могут подразумевать юридические и копирайтные заморочки, особенно если компания использует их для размещения собственного контента.
Ограничения демо-сайтов
К сожалению, у демо-сайтов есть ограничения:
- Демо-сайты могут быть слишком простыми. В них может не быть длинных сценариев или реальных данных. Неактивные элементы, кажущиеся реальными, могут раздражать.
- Демо-сайты могут быть не созданы для масштабирования. Нагрузка запросами или параллельное тестирование могут сломать их.
- Демо-сайты могут выглядеть низкокачественными вне зависимости от того, правда это или нет. Иногда их быстро создают для тестирования, не вдаваясь в детали так, как с реальными сайтами.
- Демо-сайты со значительным уровнем брендирования могут не подходить для использования. К примеру, если А и В – конкуренты, то А не должны использовать демо-сайт компании В для обучения использованию своего продукта.
|