В процессе тестирования очень часто придётся обращаться к БД, проверить данные, изменить и проверить отображение, сравнить и прочее. Сейчас разбёрем как подключится к postgreSql.
Настройка класса SQL Java
Давайте создадим специальный класс, в котором будут инициализированы все необходимые переменные для доступа к базе данных. В самом же тесте мы будем использовать только запрос. Таким образом, мы разделим логику от реализации.
- Добавляем зависимость:
- Создаём отдельный класс, назовём его SQL:
Соответственно указаны тестовые данные, вы же вводите свои.
- Создаём сам метод в котором подключаемся к БД и используем запрос:
- В нашем Абстрактном классе (разбирали в предыдущих статьях) добавляем наш метод Connect, для инициализации именно этой БД перед тестом.
- После этого можем использовать наш метод в тесте:
Таким образом мы найдём нужное значение в БД, но как же с ним работать?
Работа с данными из SQL Java
Ничего сложного, создаём цикл, который проходит по всем строкам нужного столбца. Выглядит это так:
Написали запрос, взяли из запроса столбец с именем name, присвоили это значение String = name и сравнили это значение с Alex.
Изменение данных в SQL Java
Иногда нужно не только достать значения из БД, но и изменить их. Методы для этого выглядят так:
Обновление данных:
В таблице testBD изменяем у строки с id = 1 имя на Tom.
Добавление данных:
В таблице testBD создаём строку и перечисляем все обязательные поля для заполнения.
Это 3 основных момента работы с SQL, этого достаточно чтобы использовать БД в своих тестах!
Подключение по SSH
Создаём новые переменные
После добавляем данные для SSH в метод подключения
И далее в методе, в котором идёт сам запрос также меняем логику
В данном случае это условие, если мы заполняем sshHost, то подключаемся по другим правилам. Иначе sshHost пустое и подключаемся как раньше.
if (!TextUtils.isEmpty(sshHost))
Для обновления данные тоже самое, только немного изменилось в конце
В самом тесте ничего не изменилось. Также пишем запрос и получаем результат!
Если у вас есть вопросы или вы просто хотите стать частью команды тестировщиков, то переходи в ТГ канал, где можем пообщаться с единомышленниками и найти много интересных и полезных знаний!Также если вам нужна индивидуальная консультация, менторство и помощь в создании проекта пишите в ТГ канал!