У меня есть настроенное поле капчи. Я хочу удалить это поле из формы при отображении во время тестов.
Первоначально я думал о том, чтобы иметь переменную TESTING
в отдельном файле настроек, который будет предоставлен в качестве аргумента команды запуска теста. Тогда я мог бы что-то вроде:
class CaptchaForm(forms.Form):
notify_email = forms.EmailField(required=False)
if not settings.TESTING:
recaptcha = CaptchaField()
Я считаю, что это должно сработать.
Может быть, еще лучший подход. Есть идеи?
Обновление
Поработав с предложенными ниже советами, я добавил это в папку тестовой папки __init__.py
:
from project.app.forms import CaptchaField
CaptchaField.clean = lambda x, y: y
Это сработало --- без создания общей настройки TESTING
. Это выглядит приемлемо? Есть ли причина, по которой я не должен этого делать?