Легкая сложностьЛёгкий уровень

Тестовое задание по QA от компании Javarush

Тестовое задание для стажёра-тестировщика на знание Java и SQL

Создайте форк репозитория в GitHub и выполните задания на Java версии 15 или более поздней.

Присылайте ссылку на репозиторий с решением, даже если выполнили не все задания.

Задание 1

Скорректируйте класс WithProblemsTests, чтобы проект скомпилировался, а все пять тестов успешно завершились.

Задание 2

В тесте класса ReadFileTests прочитайте файл ReadFileTests.txt. Проверьте, содержит ли вторая строка слово «аллоха».

Задание 3

Существуют две таблицы:

orders (order_id, promocode_id) — заказы;
promocodes (promocode_id, name, discount) — промокоды.
Напишите SQL-запрос, который подсчитает долю заказов с промокодами — соотношение заказов с промокодами от общего количества заказов. Сохраните запрос в файле resourc es\Task3.sql.

Задание 4

Напишите xpath и CSS-селектор для кнопки-стрелки с https://ya.ru/ cкриншот. Сохраните результат в файле resources\Task4.txt.

Задание 5 (сложное)*

Реализуйте иерархию классов с примером основных принципов ООП. По возможности укажите, где какой принцип используется. За основу возьмите роботов.

Робот умеет ходить, ездить или летать. Робот имеет тип назначения:

боевой робот снабжён набором оружия (стрелкового или мечом) и умеет стрелять;
сварщик сваривает детали;
повар готовит.
Роботы заправляются по определённому циклу в зависимости от вида энергии:

атомной раз в 50 лет;
внутреннего сгорания (дизельное топливо, бензин) по мере опустошения бака в зависимости от его объёма;
электрической по мере уменьшению заряда до 20%.

Продемонстрируйте, пожалуйста:

роботов по каждому виду назначения с каждым видом топлива (3*3 = 9 объектов);
работу каждого робота;
заправку каждого робота по его запросу.

Негативная проверка:

хотя бы один робот использован не по назначению;
хотя бы один робот заправлен не тем топливом.

Источник задания