Шаблон для модульного тестирования формы с компонентом Captcha внутри? - PullRequest
2 голосов
/ 13 февраля 2012

В настоящее время я сталкиваюсь с трудной задачей модульного тестирования формы с компонентом Captcha внутри.

По определению, Captcha предназначен для предотвращения автоматической отправки .И по определению, модульные тесты являются автоматическими .

Может ли кто-нибудь хорошо разбираться в блочном тестировании HTML-форм, пожалуйста, дайте совет?

(К вашему сведению, я использую Tapestry 5 вместе с егоКомпонент Kaptcha в комплекте - хотя я подозреваю, что решение не зависит от технологии.)

Ответы [ 2 ]

1 голос
/ 14 февраля 2012

Я добавляю тестовый режим в свое приложение, которое заставляет строку Captcha получить хорошо известное значение (мне нравится «i8cookies»). Тестовый режим указывается как системное свойство JVM при запуске и просто отсутствует в рабочем режиме.

1 голос
/ 13 февраля 2012

Я бы сказал, что вы должны поместить свой генератор капчи позади интерфейса и использовать макет (или заглушку) в своем модульном тестировании.

Не уверен, с каким языком вы работаете, но в C # (чисто для того, чтобы я мог написать пример кода - я думаю, что это довольно стандартное решение) вы используете что-то вроде этого:

public interface ICaptchaGenerator
{
    string CreateCaptcha();
    bool IsCaptchaResponseCorrect(string originalCaptcha, string userResponse);
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...