Я прочитал, что НЕ рекомендуется писать зависимый тестовый сценарий ios. Но что, если приложение в значительной степени управляется данными и манипулирует (создает, несколько потоков обновления, логически удаляет) данными. По сути, мы хотим минимизировать:
- Создание тестовых данных для каждого зависимого сценария (например, для обновлений сначала необходимо создание данных)
- повторное выполнение шагов
- Общее время выполнения набора тестов
Вопрос: Чтобы контролировать выполнение потоков, могу ли я расширить базовые классы Karate, которые обрабатывают @ parallel = false, и добавить собственный код, учитывающий «Зависит от сценария»? Есть ли лучший / альтернативный дизайн? Пожалуйста, предложите.
Пример:
- Сценарий1: Создать T1, T2 [Параллельно]
- Сценарий2: Создать T3 [Параллельно]
- Сценарий3: Создайте R1 (связь между T1 и T2), который обновляет T1, T2 [Последовательно: подождите, пока 1]
- Сценарий 4: Создайте R2 (связь между T1 и T3), который обновляет T1, T3 [Последовательно: дождитесь 1, 2]
- Сценарий 5: Удалить R1, который обновляет T1, T2 [Последовательно: ждать до 1,3]
- Сценарий 6: Удалить T1, который удаляет R1, R2 [Последовательный: подождите, пока 1,4, 5]