Я не берусь рассказывать вам точно, как кодировать ваши приемочные тесты без более подробной информации о языке или стеке тестирования, но самое простое решение - реализовать динамическое ожидание, которое непрерывно опрашивает состояние системы на предмет желаемого результата, прежде чемдвигаться вперед, прерывая цикл (предполагая, что вы будете использовать какую-то форму цикла, но это зависит от вас), когда ожидаемый / желаемый ответ получен.
Этот «опрос» может принимать различные формы, такие как:
a) запрос ожидаемого обновления базы данных (возможно, значение в таблице обновляется при создании пользователя)
b) проверяет связь с зависимой службой, пока вы не получите соответствующий «сигнал»вы ожидаете указать создание пользователя.Например, возможно, запрос GET к другой службе (или другой конечной точке той же службы) возвращает статус «создан» для данного пользователя, что означает, что пользователь был создан.
Без дополнительной технической информации яне могу дать вам точных инструкций, но динамический опрос - это решение, которое я использую каждый день для тестирования нашей асинхронной архитектуры микросервиса.
Имейте в виду, что это решение динамического опроса работает при условии, что у вас есть доступ к службеи / или базы данных, которые содержат индикатор, по которому вы «опрашиваете», когда пора продвигаться вперед с вашим тестом.Опять же, я сигнализирую о том, что двигаться вперед - это что-то прозрачное, например, изменение статуса для вновь созданного пользователя, существование пользователя в базе данных / таблице, внешней или внутренней для микросервиса, и т. Д.
Некоторые другиев этом сценарии используются следующие предположения:
a) достаточные нефункциональные характеристики тестируемой системы, в которых ограничение нефункциональной производительности тестируемой системы будет ограничением.
b) aотсутствие ресурсных ограничений, так как ресурсы потребляются довольно сильно во время «опроса», так как ресурсы потребляются довольно сильно в течение «опроса».(подумайте о динамическом сгибании ресурсов Azure, который может быть дорогостоящим со временем).
Примечание. Будьте осторожны с бесконечными циклами.Вы должны вставить какое-то ограничение, которое выходит из цикла опроса (и, вероятно, приводит к неудачному тесту) после разумного периода времени или количества попыток на ваше усмотрение.