Это зависит от того, хотите ли вы ограничить один тест или для всех, но подход аналогичен и основан на настройках .
Настройка одиночного теста
Чтобы изменить Поведение по умолчанию для некоторых тестов. Мы можем украсить их settings
object подобно
from hypothesis import given, settings, strategies
@given(strategies.integers())
@settings(max_examples=10)
def test_this_a_little(x):
...
@given(strategies.integers())
@settings(max_examples=1000)
def test_this_many_times(x):
...
для test_this_a_little
, будет создано 10
примеров (не более) и для test_this_many_times
будет 1000
.
Настройка всех тестов
Чтобы изменить поведение по умолчанию для всех тестов где-то во время bootstrap вашего теста (например, для pytest
это может быть conftest.py
module ) мы можем определить пользовательский профиль настроек hypothesis
и затем использовать его во время вызова тестов, например
from hypothesis import settings
settings.register_profile('my-profile-name',
max_examples=10)
и после этого (при условии, что вы используете pytest
)
> pytest --hypothesis-profile=my-profile-name
Дальнейшее чтение
hypothesis
довольно круто и позволяет нам настраивать многие вещи, доступные опции перечислены в документации .