Тестовые задания по QA
Здесь собраны реальные тестовые задания, которые дают соискателям на стажировках и junior-позициях. Эти задания помогут лучше подготовиться к отбору, потренироваться и пополнить портфолио
Ediweb • Лёгкая сложность
Тестовое задание по QA от компании Ediweb
Тестовое задание на должность "Тестировщик" Необходимо выполнить следующие задания: Ознакомиться с тестами, которые находятся в папке feature Выполнить задания, которые описаны в каждом feature файле. FAQ Для работы тестов используется Ruby и его gem'ы Для работы тестов требуется: Установить Ruby Установить требуемые gem'ы из файла со списком gem'ов Проверить совместимость файла драйвера браузера и версии браузера Ссылку на Ваш репозиторий с проектом и отчет присылать на почту - marina.zayceva@ediweb.com с темой письма "Тестовое задание ФИО соискателя" Если у Вас возникли затруднения в процессе выполнения задания, Вы можете задать вопрос, отправив письмо на почту marina.zayceva@ediweb.com с темой "Вопросы по тестовому заданию ФИО" Рекомендации Для более удобной настройки и запуска тестов рекомендуется использовать ОС семейства Linux (к примеру Ubuntu) При использовании ОС семейства Windows можно воспользоваться образом VirtualBox http://tiny.cc/172ouz (пароль 123)
Matic Insurance Services • Средняя сложность
Тестовое задание по QA от компании Matic Insurance Services
Customer Import Platform Hi, there! One of the biggest banks in America decided to share its customer information with your company. The bank’s manager is going to send you a CSV file that includes details of customers. This information will be used to contact the customers in order to sell them insurance policies. But before that, you need to process the file and save all valid customers to DB. Simple user flow: Open the application Click to add a new import Fill in a title, add a CSV file, press the ‘Submit' button. After the file is uploaded and a new import is created - click on the 'Start import’ button. Refresh the page and see the results of the import. Application requirements: Users should be able to Create, Read, Update, and Delete imports. The main page of the application should show a list of all imports and provide a link to add a new import. New Import page should show a form for creating an import model: upload CSV file and import title. After creating an import record, the admin must be redirected to the import details page. Import details should display: count of successfully created customers from files. count of customers that were not created due to validation errors. import status - created, started, completed. by default - created. created at - time when import was created. started at - time when import was started. completed_at - time when import was finished. 'Start Import' button. The button has to start processing the import file and create customers. 'Delete Import' button. Progress of import in percentage - this is not required but nice to have. This field should show the progress of processing import files, how many customers are created/failed at the moment. For example, you uploaded a file with tons of records. Processing all user data can take more than an hour, would be good to see the progress of the import (e.g. 46%). first_name, last_name, email, date_of_birth fields are required and should be validated as: Names not shorter than 2 symbols Correct email format Customer should be older than 18 years and younger than 100 years General recommendations: More tests are better 🙂 We are expecting tests for controllers, models(if needed) and business logic. Feature tests are desirable. (please use RSpec) It is not critical how the UI looks like. You can use any preferable UI library. Please, follow ruby/rails style guides. You can find examples of CSV files in the 'import' folder of this project. There are 2 files: 500 users and 100_000 users. Make sure you utilize both of them. If you have any questions don’t hesitate to ask! Please push the final code to Github and send us a link to the repo. Good luck and looking forward to seeing a finished project.
SendSay • Средняя сложность
Тестовое задание по QA от компании SendSay
Junior Frontend + QA: Тестирование логина и отправки рассылки [АРХИВ] Задача Напишите e2e-тесты для сценариев входа в приложение и отправки произвольной рассылки. Когда всё готово Выложите на гитхаб репозиторий с тестовым заданием Создайте пулл-реквест на гитхабе со всеми файлами вашего проекта Пригласите в свой репозиторий камрадов: bitoptik, nipanasovich, rosendi, alexander-litvinovich, yukonovalov, victor-magarlamov Отправьте ссылку на репозиторий как отклик на вакансию в hh Отправьте нам ссылку на видео, где видно, что ваши тесты у вас запустились и проходят Наши ожидания Сначала мы будем смотреть, работает задание или нет, поэтому нам нужна ссылка на репозиторий, чтобы мы могли его склонировать и запустить. Мы ждём, что в написании e2e-тестов вы: посмотрите продукт и познакомитесь с предметной областью будете использовать Cypress (https://www.cypress.io/) будете использовать JS ES6 При оценке задания мы обращаем внимание на следующие вещи: Работоспособны ли тесты — если они не запускаются, мы расстраиваемся и проверяем код с большим скепсисом Насколько тщательно вы подготовились: как разобрались в продукте и какие дополнительные кейсы добавили в сценарии Насколько тесты независимы от html-кода страницы и какие селекторы вы используете Как сгруппированы тестовые блоки и какие комментарии вы оставили в коде image ⚡️ На автомате накидали всё в index.js? ⚡️ Если вы так и сделали, то мы заранее просим отрефакторить такое «выполненное» задание. Вы пишете код для людей. Лучше потратьте чуть больше времени, но решите задачу качественно. Что понадобится для задания Зарегистрировать бесплатный аккаунт в Sendsay. Используйте промокод «тест» при заполнении регистрационной формы. Сценарий входа в приложение (обычный вход и корпоративный): 1. Я захожу на https://app.sendsay.ru/signin 2. Ввожу логин, пароль и нажимаю «Войти» 3. Если введение данные валидны, то я попадаю в приложение 4. Если введенные данные невалидны, то … Сценарий отправки еmail-выпуска (некорпоративный аккаунт): 1. Я залогинен в приложении 2. Захожу в раздел «Рассылки» на https://app.sendsay.ru/campaigns/issues 3. Создаю новый email-выпуск 4. Я прохожу все обязательные шаги визарда формирования email-выпуска 5. Отправляю выпуск рассылки P.S. Если хотите задать вопрос по тестовому заданию, до того как откроете пулл-реквест 👉 https://t.me/joinchat/CN4mgxZRCXU-uRZo9VBuWw — Это тихий чат, задаёте вопрос и получаете ответ. На обыденные темы разговаривать запрещается. Сообщения цензурируются, болтуны банятся. P.P.S. Многие соискатели совсем не умеют читать или читают, но очень невнимательно. Если вы внимательный читатель, поместите в корне репозитория файл с названием SimonSays.md и внутри напишите какую-нибудь смешную фразу-палиндром на русском или английском языке. P.P.P.S. Для выполнения задания вам понадобится бесплатный аккаунт в Sendsay. Вам также очень поможет поиск по описанию API и API-коннектор. (Спасибо, Кирилл 👋) P.P.P.P.S. Мы смотрим, проверяем код и тестируем функциональность всех тестовых заданий. На проверку тестового задания, сделанного на среднем уровне (не совсем плохо, но и не восхитительно) уходит от двух дней до недели. Восхитительно сделавшим тестовое, мы почти не пишем комменты. Сделавшим «совсем плохо» тоже стараемся отвечать побыстрее, но иногда пишем общими фразами. Иногда мы просим доработать какие-нибудь части задания — так мы проверяем насколько комфортно нам будет вместе работать. Для справки — https://help.github.com/en/articles/creating-a-pull-request — https://help.github.com/en/articles/requesting-a-pull-request-review
Effective Mobile • Лёгкая сложность
Тестовое задание по QA от компании Effective Mobile
Тестовое задание QA E2E UI Цель: Создать автоматический e2e тест для проверки сценария покупки товара на сайте saucedemo.com с использованием Python + Selenium или Playwright. Тест должен проверять процесс от авторизации до завершения покупки, с возможностью легко воспроизвести его на любом компьютере. Требования: 1. Сценарий теста: Тест должен выполнять следующие действия на сайте saucedemo.com: Авторизация: Использовать тестовый аккаунт: Логин: standard_user Пароль: secret_sauce Выбор товара: Выбрать один товар (например, "Sauce Labs Backpack") и добавить его в корзину. Оформление покупки: Перейти в корзину и убедиться, что товар добавлен. Оформить покупку, заполнив поля Завершить покупку. Проверка: Убедиться, что покупка завершена успешно. Ожидаемый результат: Кандидат должен предоставить готовый репозиторий с проектом, который можно развернуть и запустить по инструкции в README.md. Тест должен корректно авторизоваться на сайте, выбрать товар, оформить покупку и проверить успешное завершение покупки. GitHub API Цель Создать автоматический тест для проверки работы с GitHub API на языке Python. Тест должен уметь создавать, проверять наличие и удалять репозиторий на GitHub. Необходимо предоставить решение, которое легко воспроизводимо на любом компьютере. Требования Использование GitHub API: Скрипт должен использовать API GitHub для выполнения следующих операций: Создание нового публичного репозитория. Проверка списка репозиториев для подтверждения создания. Удаление репозитория. Использование переменных окружения: Входные данные (имя пользователя GitHub, токен API и имя репозитория) должны передаваться через переменные окружения или файл конфигурации .env. Зависимости: Зависимости должны быть описаны в файле requirements.txt. Необходимые библиотеки (пример): requests и python-dotenv. Инструкция по запуску: Проект должен содержать файл README.md с подробной инструкцией, как установить зависимости, настроить переменные окружения и запустить тест. Структура проекта: Проект должен содержать следующие файлы: test_api.py — основной скрипт с тестом. .env — файл с переменными окружения (необходимо указать пример). requirements.txt — файл с зависимостями. README.md — инструкция по установке и запуску. Ожидаемый результат Кандидат должен предоставить готовый репозиторий с проектом, который можно развернуть и запустить по инструкции в README.md. Тест должен корректно создавать, проверять и удалять репозиторий на GitHub.
без ограничений.
Чтобы получить полный доступ,
вам необходимо зарегистрироваться.