我正在进行一个赛普拉斯测试,该测试会动态创建一些路由。一个一般的例子如下:
export const checkAndLoadApis = (apis, pageUrl) => {
let allResponses = [];
cy.server();
cy.log(apis)
apis.forEach((api, index) => {
// Alias creation for API request
cy.route(api).as('route'+Object.keys(api)[0]);
cy.wait('route'+Object.keys(api)[0])
.then(apiRes => {
expect(apiRes.status).eq(200);
allResponses[index] = apiRes;
})
});
cy.visit(pageUrl);
return allResponses;
}
响应值显然为null,因为代码异步运行。 有人可以帮我改善代码吗?在赛普拉斯代码中,使用promise或async / await结构似乎很困难。