#testing #automation #automated-tests #cypress
Вопрос:
Я хочу запустить один тест параллельно с различными наборами данных.
Я храню набор данных в исправлениях.
Комментарии:
1. Вы можете поиграть с API модуля , чтобы запустить одну и ту же спецификацию в разных процессах. В вашем вопросе не хватает деталей, поэтому я понятия не имею, из чего состоят «разные наборы данных».
2. например, предположим, что я тестирую модуль «пение», и в будущем у меня будет массив объектов, содержащих правильные данные для входа. теперь я хочу проверить это с помощью этих данных для входа.
Ответ №1:
Вам пришлось бы загружать все свои данные в объекты из светильников, но затем вы могли бы добавлять каждый ответ в массив и shift
каждый раз внутри цикла while. Ваши отчеты об ошибках не будут отличными, но вы сможете обрабатывать все свои наборы данных с минимальным дублированием кода. Что-то вроде этого, может быть:
it(‘tests my data sets’, () => {
const datasets = [dataset1, dataset2, dataset3];
while(dataset.length > 0) {
cy.intercept('GET', '/todos', req => req.reply(datasets.shift()));
cy.get(‘items’).should(‘be.visible’);
}
});
Комментарии:
1. Спасибо за ответ. Но как мы можем выполнять тесты с этими наборами данных с распараллеливанием? Я хочу параллельно протестировать каждый набор данных
2. А, точно. Вам, вероятно, потребуется развернуть контейнеры docker, чтобы все они работали параллельно, так как я не думаю, что Cypress предназначен для одновременного запуска нескольких процессов на одной машине. Я наткнулся на этот пост в блоге, нашел, что он вам помогает? ронни.дев/2020/05/16/параллельные-кипарисовые-тесты