Size: a a a

testing_in_python

2020 August 28

I

Ilya in testing_in_python
Anatoly Bobunov
By default, using --numprocesses will send pending tests to any worker that is available, without any guaranteed order. You can change the test distribution algorithm this with the --dist option. It takes these values:

--dist no: The default algorithm, distributing one test at a time.
--dist loadscope: Tests are grouped by module for test functions and by class for test methods. Groups are distributed to available workers as whole units. This guarantees that all tests in a group run in the same process. This can be useful if you have expensive module-level or class-level fixtures. Grouping by class takes priority over grouping by module.
--dist loadfile: Tests are grouped by their containing file. Groups are distributed to available workers as whole units. This guarantees that all tests in a file run in the same worker.
Но я так понял, не совсем поможет именно в моем случае.
Разделение по модулю и файлу.
Мне нужно именно по директориям.
Но погулю и так, спасибос
источник

ТЭ

Тачами Экстович... in testing_in_python
Ilya
Но я так понял, не совсем поможет именно в моем случае.
Разделение по модулю и файлу.
Мне нужно именно по директориям.
Но погулю и так, спасибос
Ты можешь как угодно раскидывать, как раз в 10ом пункте пина пример
источник

ТЭ

Тачами Экстович... in testing_in_python
Но тебе это не нужно скорее всего.
источник

ТЭ

Тачами Экстович... in testing_in_python
Если тесты аффектят друг друга, лучше, переписать их изолировано, если это плохо влияет на время прогона то увеличить параллельность. Это обычно проще, чем ловить ошибки из-за сайдэффектов зависимых тестов.
источник

СС

Сказочный Сникерс... in testing_in_python
Тачами Экстович
Ты можешь как угодно раскидывать, как раз в 10ом пункте пина пример
я таки забыл его обновить)
источник
2020 September 01

JS

John Smith in testing_in_python
Привет!

кто то пробовал аттачить видео записанное селеноидом в allure report ?
источник

M

Merg in testing_in_python
вряд ли
источник

S

Sergei in testing_in_python
ну вроде не должно быть проблемой. Считываешь файл в бинаре-моде и аттачишь контект к аллюр-отчету, методом типа attachment, наверняка у питоновской либы тоже есть че-то подобное. Мime type можно указать video/mp4 и тогда можно будет смотреть видео прямо в отчете
источник

ТЭ

Тачами Экстович... in testing_in_python
GIF = ("image/gif", "gif")
MP4 = ("video/mp4", "mp4")
OGG = ("video/ogg", "ogg")
WEBM = ("video/webm", "webm")


Ну, там несколько форматов на выбор
источник

S

Sergei in testing_in_python
👍
источник

JS

John Smith in testing_in_python
дело в том что я хочу приатачить файл только если тест кейс зафейлился, но в момент фейла, видео файл еще не згенерирован. здесь и проблема, я подумал может кто уже сталкивался
источник

JS

John Smith in testing_in_python
@pytest.hookimpl(tryfirst=True, hookwrapper=True)
def pytest_runtest_makereport(item: Item, call: CallInfo):

   outcome = yield
   result = outcome.get_result()

   if result.when == 'call' and result.failed:

       allure.attach.file(
           source=video_filepath,
           name='video recording',
           attachment_type=allure.attachment_type.MP4
       )

вот только у меня еще нету vide_filepath он будет в конце сессии

но в конце сессии у меня не будет контекста теста которий зафейлился

как то так
источник

ТЭ

Тачами Экстович... in testing_in_python
Определять статус теста, можно в любой фикстуре
источник

S

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

JS

John Smith in testing_in_python
только per session
источник

S

Sergei in testing_in_python
м-да, дичь
источник

ТЭ

Тачами Экстович... in testing_in_python
Ну, сессия завершается, и в тирдауне добавь ссылку на видео
источник

ТЭ

Тачами Экстович... in testing_in_python
В чем проблема то
источник

S

Sergei in testing_in_python
проблема в удобстве использования, захотел приаттачил конкретное видео к конкретному тесты, а не потом искать по 2ч фильму, где че упало :)
источник

ТЭ

Тачами Экстович... in testing_in_python
Можно перестать экономить по 2 секунды на тест, и запускать на каждый тест отдельную сессию
источник