Я изучаю возможность использования гипотезы для некоторых тестов. Мне нравится, что он может генерировать большое количество данных для поиска пограничных случаев. Тем не менее, я хотел бы иметь возможность адаптировать некоторые из моих тестов чуть больше.
Например, я могу определить тест для генерации целых чисел, но я ожидаю, что этот тест будет соответствовать действительным почтовым индексам. Я могу сделать это? Или, возможно, более сложное соответствие неамериканским почтовым индексам, которые все являются целыми числами, а другие (скажем, Канада) нет?
То же самое было бы полезно для текста. поля, которые, как ожидается, будут соответствовать некоторому типу маски (например, адресу электронной почты).
Прямо сейчас у меня есть тестовые случаи, которые оформлены следующим образом:
from hypothesis import given, strategies as st
@given(st.integers())
В этом конкретном случае я бы хотел, чтобы он также соответствовал правилам почтового индекса США.
@given(st.text())
Для этого я бы хотел, чтобы он генерировал шаблоны в формате, похожем на электронную почту.
Может ли гипотеза создать такой тип генерации?