t.me/atinfo_chat Telegram группа по автоматизации тестирования

Как загружать разные данные в тесты и как данные держать в одном месте?

test-data
java
selenium
selenide
Теги: #<Tag:0x00007fb2f557eb58> #<Tag:0x00007fb2f557ea18> #<Tag:0x00007fb2f557e8d8> #<Tag:0x00007fb2f557e770>

(Igor Zip) #1

Подскажите пожалуйста! Есть общие тесты, которые прогоняются на dev и prod. В тестах нужно заполнять формы разными данными!

  1. Как сделать чтоб данные все хранились в одном месте и разные тесты их использовали?
  2. Как сделать чтоб для dev брались одни данные, а для prod другие?

(Viktor) #2

для формы создать модельку данных, сделать 2 варианта данных, где нибудь в config/json/xml/или прям в классе, и в зависимости от окружения присваивать нужные данные для модельки


(Igor Zip) #3

Спасибо! Но каким способом создать модель данных и как из нее вытаскивать объекты?


(Vladislav Abramov) #4

как вы тестам сообщаете, что они будут выполняться в дев среде?


(Igor Zip) #5

никак не сообщаю, руками вбил данные и все! Как мне сообщать?


(Vladislav Abramov) #6

ну то есть вы руками пишете url-ки куда ходить тестам?
напишите банальный switch case, который от параметра environment где-то в конфиге будет цеплять нужные вам адреса

а дальше подобную идею можно развивать


(Igor Zip) #7

Я понял, что через If / else или SWITCH можно указать с какого файла грузить данные! А как сам файл сделать, и как его превратить в обьект данных?


(Vladislav Sobol) #8
  1. Держать тестовые данные в разных файлах, например, dev-data.json, staging-data.json
  2. Написать метод или обьект который берет данные из нужного файла в зависимости от параметра DEV OR STAGING
  3. Перед тестами задавать параметр на каком окружении вы гоните тесты

(Vladislav Abramov) #9

вы уверены, что вы тем делом занимаетесь, которое вам по силам?


(Alexandr D.) #10

Вы меня извините конечно, но вопросы, которые вы задаете не имеют отношения к автоматизированному тестированию.
Эти вопросы относятся к базовому программированию.
Я бы рекомендовал Вам не палить из пушки по воробьям, а заняться сначала изучением программирования в целом, и только потом уже начинать применять навыки в автоматизации.
Потому что без знаний программирования Вы всё равно не добьетесь хороших результатов.


(Viktor) #11

Тут можете посмотреть примеры моделек
с гетерам сетерами

тут гетеры сетеры пишутся более коротко через атрибуты

Но каким способом создать модель данных - создать инстанс класса и присвоить нужные значения через сеттер (если храните в коде) или использовать либу какую то, которая парсит Json (если храните в например Json)
Как из нее вытаскивать - просто брать обращаться к полю объекта через геттер


(Igor Zip) #12

Начал разбираться и застрял вот на чем:
Сделал файл json с данными и положил его в каталог проекта. Теперь не могу понять как мне конфигурировать файл, чтоб с командной строки запускать mvn… с параметрами, который в свою очередь вызывает файл testng.xml. Если параметр QA, то загружается в тест файл QA.json.


(Vladislav Abramov) #13

:man_facepalming: вас реально в гугле забанили? вы понимаете, что ваши вопросы вообще никак к автоматизации тестирования не относятся?
код вы не показываете, туманно объясняете, что пытаетесь сделать… это так не работает!


(Viktor) #14

В зависимости от окружения меняйте путь к файлу, который вы передаете в метод (вы наверное используете какую то библиотеку), который парсит ваш файл в модельку.
Как вытащить параметер я не в курсе нужно гуглить, предпологаю вы хотите это


(Igor Zip) #15

Спасибо, большое! Именно это я и имел ввиду!


(vmaximv) #16

http://owner.aeonbits.org
покроет все хотелки