我正在尝试使用量角器运行角度e2e测试。
这是我的角度项目看起来像:
角度项目
-
主模块
- 人力资源模块(功能模块)
- 寄存器模块(功能模块)
对于我的 e2e 测试,如果我尝试在主模块上执行测试,它们运行良好,但对于功能模块,它会不同步。
我收到的错误是 -Angular is not defined.
,有时element is not visible within specified timeout
规格代码:
describe('Page name', () => {
it('should be able to load page', async () => {
navigateToPage('hr/csvimport');
browser.waitForAngular();
const settingsName = generateRandomNumber();
let btnAdd = element(by.id('btnAdd'));
await btnAdd.click();
//expect condition
});
});
导航到页面代码:
export const navigateToPage = async (path) => {
console.log('set location ' + path);
if (path === '/' || path === '') {
await browser.get('/');
} else {
await browser.waitForAngular().then(() => {
browser.get('/' + path);
});
}
};
我最好的猜测是,由于功能模块具有不同的脚本加载,因此有些与角度不同步。 目前,它仅在单击时冻结,测试停止。
问题:如何使其与角度同步?
让我们从1 到 1 开始
navigateToPage
和waitForAngular
回报承诺。一个承诺需要解决。因此,当您调用它们时,请使用await
让我知道你看到了什么