Size: a a a

2020 September 11

EB

Evgenii B in atinfo chat
Maksim Andryushchenkov
зачем вам конфтесты на разных уровнях? для разделения логики по файлам обычно используют определение
pytest_plugins = [
   "fixtures_api",
   "fixtures_ui",
]

где fixtures_api.py и fixtures_ui.py - файлы с фикстурами, лежащие рядом с conftest.py
как это помогает переопределению фикстур из глобальной в более кастомную?
источник

EB

Evgenii B in atinfo chat
Alexander Adler
Вопрос - почему могло произойти такое:
Есть в проекте разные тест сьюты, под них conftest файлы. В корневом conftest задана фикстура rabbitmq со скопом session. Для некоторых сьютов она переопределяется со скопом module, т.к. там несколько другие настройки. Месяцами это работало без сбоев, где нужно pytest подхватывал нужную фикстуру из ближайшего по дереву conftest файла. И тут вдруг билд упал с такой ошибкой
[Step 8/10] test_sandbox.test_components.test_scans_clean.test_sandbox_scan_clean(bat)
[17:14:34][Step 8/10] ERROR
[17:14:34][test_sandbox.test_components.test_scans_clean.test_sandbox_scan_clean(bat)] test setup failed
[17:14:34][test_sandbox.test_components.test_scans_clean.test_sandbox_scan_clean(bat)] ScopeMismatch: You tried to access the 'module' scoped fixture 'rabbitmq' with a 'session' scoped request object, involved factories
../../../../../../tests/conftest.py:286:  def static_analyzer(rabbitmq)
../../../../../../tests/test_correlation_rules/conftest.py:84:  def rabbitmq(worker_setup, connector)

Зачем пайтест взял эту фикстуру не из корневого conftest (/tests/conftest.py), а полез за ней в левый тест сьют (/tests/test_correlation_rules/conftest.py)? Мне казалось, что дискаверинг фикстур должен быть достаточно предсказуемым
почисти кеш пайтеста, результат повторяется?
источник

MA

Maksim Andryushchenk... in atinfo chat
Evgenii B
как это помогает переопределению фикстур из глобальной в более кастомную?
это помогает вообще не думать об этих вещах и просто хранить/править фикстуры в одном месте
источник

EB

Evgenii B in atinfo chat
еще раз, как факт того, что тебе нужно один метод иметь в двух разных реализациях поможет-то?
источник

MA

Maksim Andryushchenk... in atinfo chat
Evgenii B
еще раз, как факт того, что тебе нужно один метод иметь в двух разных реализациях поможет-то?
по мне так вообще метод в разных реализациях = попахивает
источник

EB

Evgenii B in atinfo chat
представь что у тебя есть апи, где

api
---v1.
------v1.5
------v1.8
---v2.
---v3.
---
---n
где под каждую версию апи тестируются те же самые методы, где-то их больше, где-то их меньше. где-то форма запроса POST имеет один требуемый параметр, где-то его нет.

как вы без иерархии красиво разрулите это все? перегрузкой сигнатуры метода и проверкой в нем на ифах?

или написанием 101 метода под каждую версию апи?
источник

EB

Evgenii B in atinfo chat
Maksim Andryushchenkov
по мне так вообще метод в разных реализациях = попахивает
какой-то не аргумент, а вкусовщина. плагины не заменяют резолюции иерархии фикстур
источник

MA

Maksim Andryushchenk... in atinfo chat
разрулил бы базовой фикстурой (для всех версий) и далее ее использовал бы в локальной фикстуре, на уровне файла, где изменял бы ее результат так, как мне надо. такой путь намного понятнее, чем потом в иерархии смотреть откуда какой метод берется.
источник

EB

Evgenii B in atinfo chat
мне вообще не понятно, пример можно пожалуйста? =)
источник

MA

Maksim Andryushchenk... in atinfo chat
реально не понятны мои слова? что там сложного?
источник

MA

Maksim Andryushchenk... in atinfo chat
я про цепочку фикстур, если так будет понятнее, не про реализацию логики в одной, а разбиение логики на 2 фикстуры
источник

D

DrOn in atinfo chat
Есть нескромный вопрос, если я заспамлю компанию на бейскемп своим резюме на автоматизацию будет норм?
источник

MA

Maksim Andryushchenk... in atinfo chat
сразу ддосьте
источник

S

Sergei in atinfo chat
можно еще по почте разослать)
источник

S

Sergei in atinfo chat
бейскемп жив оказывается)
источник

AA

Alexander Adler in atinfo chat
Evgenii B
почисти кеш пайтеста, результат повторяется?
Разобрался, в чем была проблема. Оказалось все сломала опция —alluredir, которая невесть зачем меняет еще и rootdir пайтеста. В целом тесты в контейнере, там должны быть исключены проблемы с кэшами, а вот папка для репортов как раз пробрасывалась бинд маунтом с хоста
источник

EB

Evgenii B in atinfo chat
Alexander Adler
Разобрался, в чем была проблема. Оказалось все сломала опция —alluredir, которая невесть зачем меняет еще и rootdir пайтеста. В целом тесты в контейнере, там должны быть исключены проблемы с кэшами, а вот папка для репортов как раз пробрасывалась бинд маунтом с хоста
👍
источник
2020 September 14

V

Vita in atinfo chat
Здравствуйте) Подскажите, плиз, как получить тело запроса в постмане, чтоб оно выводилось в тесте? не получается с request.body.raw
источник
2020 September 15

VH

Victoria Hitro in atinfo chat
Всем привет. Ребята. может кто мобилки тестировал, посоветуйте плз, какой нибудь ресурс хороший, где можно почитать, что да как.
источник

MR

Mikhail Rybalkin in atinfo chat
Привет. На хабре много статей, точно от пиксоника есть, и от баду
источник