Проверка работоспособности контактной формы (автоматическое тестирование) - PullRequest
2 голосов
/ 16 марта 2019

У меня есть сайт с контактной формулой.Для моего бизнеса жизненно важно, чтобы я получал все сообщения, которые отправляются этой формулой.И я видел SOOO много примеров разрыва контактных форм из-за обновлений зависимостей или столкновений скриптов.

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

Я использую WordPress Грозные формы , но ничего, если это нужносделанный на заказ.Ранее я использовал Контактную форму 7 с Фламинго , что было хорошо.Но недостатком было то, что, если я не получил электронное письмо, то оно молча провалилось, - и тогда я мог восстановить полученные сообщения с помощью Flamingo.И мне нужно знать немедленно , если сообщения не приходят в мой почтовый ящик.

Проверка внешнего интерфейса

Чтобы убедиться, что форма неперерыв, до того как письмо было отправлено, тогда я планирую сделать это, используя Nightwatchjs .

Проверка получения сообщения

Это часть, которую я 'Я не уверен, как это сделать ... Проверка отправляющей / получающей части.

Итак, если мой основной адрес электронной почты был inbox@example.org, то я подумал, что если бы я мог настроить дополнительное письмо, такое как robot@example.org, а затем отправить все письма на оба письма,- а потом ... эм ... сделать что-нибудь с этим?

Как мне это сделать?Или есть какие-то рамки для этого, которые облегчат?

1 Ответ

2 голосов
/ 02 апреля 2019

В вашем текущем сценарии есть 3 важные вещи, которые вы должны учитывать при тестировании.

Но до этого не полагайтесь полностью на электронные письма, чтобы предупредить вас. Убедитесь, что при отправке формы сервер сохраняет данные в некоторой БД, а затем отправляется электронная почта, или оба могут происходить параллельно.

Автоматизация пользовательского интерфейса / функциональных тестов может быть трудоемкой и дорогостоящей. Поэтому я бы посоветовал вам разбить тестирование на два раздела.

  1. Сначала может быть прямое тестирование API, эти тесты могут содержать все бизнес-логика и сценарии, такие как отправка недействительных / пустых полей, XSS, инъекции и т. д. Теперь, используя постоянные данные, вы можете легко утверждать.
  2. Второй может быть ваши функциональные тесты, вы можете использовать кукловод или Селен, кукловод более легкий и гибкий. Просто напиши базовые тесты заполнения формы, затем войдите в wp-admin и подтвердите / подтвердите данные.
  3. Я бы предложил запустить приведенные выше тесты в некоторых UAT или другая среда, это гарантирует, что только ваши тестовые примеры создают записи в БД, а не кто-то другой. Кроме того, использование другой среды может помочь вам легко смоделировать ваш почтовый сервер или использовать mailgun API для проверки доставки электронной почты.
...