Как отлаживать, когда гипотеза приводит к ошибочному тестированию? - PullRequest
0 голосов
/ 10 октября 2019

Я использую пакет гипотез Python для тестирования с учетом состояния. Когда я запускаю свои тесты, я получаю следующую ошибку:

hypothesis.errors.Flaky: Unreliable assumption: An example which satisfied assumptions on the first run now fails it.

Я понимаю, что означает ошибочная ошибка из аналогичного поста. У меня есть тест, который не прошел в первый раз, но прошел во второй раз. Я могу понять из журнала, какой тест привел к этой ошибке. Гипотеза пробует одну и ту же последовательность испытаний 4 раза в течение всего цикла испытаний, из которых 2 из них проходят, а 2 не пройдены.

Я проверил неудачный тест по отдельности без гипотезы, и он не провалился. Я пытаюсь понять, что приводит к ошибочной ошибке. Возможно ли это ошибка в Гипотезе, как указано в посте ниже:

Что значит тест Flaky: Гипотеза дает ненадежные результаты?

Как мне обойти это? Пожалуйста, найдите файл журнала пробного запуска по ссылке: https://github.com/aparnasbose/hypothesis/blob/master/flaky%20test

1 Ответ

0 голосов
/ 16 октября 2019

Проблема почти наверняка в том, что ваш тест не является детерминированным для всех входных данных;Есть некоторые аргументы или последовательности действий, которые Гипотеза может найти, которые иногда проходят, а иногда и проваливаются. Гипотеза считает, что это ошибка в вашем тесте, и выдает ошибку Flaky.

Чтобы диагностировать это более подробно, мне нужно увидеть ваш фактический исходный код.

FYI verbose многословие здесь гораздо полезнее, чем debug (который сбрасывает слишком много внутреннего состояния). Вы также можете обновить версию до Гипотезы> = 4.41.1 для улучшения статистики.

...