Ser*_*gey 1 testing protractor angular
我有一个想要测试的 Angular 应用程序。它有登录部分,我需要以某种方式知道它是否工作正常(它发送登录数据,打开套接字连接,重定向到应用程序深度,并且路由防护没有阻止该重定向)。
我试过了
import { AppPage } from './app.po';
import { browser, by, element, until } from "protractor";
import urlContains = until.urlContains;
Run Code Online (Sandbox Code Playgroud)
...
it('should log in', () => {
page.navigateTo();
page.fillInputs();
page.logIn();
browser.waitForAngular();
browser.wait(() => {
return urlContains('dashboard');
}, 2000);
});
Run Code Online (Sandbox Code Playgroud)
即使我用不正确的数据填充字段并且应用程序不执行任何重定向,它也会成功。如何实现此重定向等待然后检查网址?
如果重要的话我会使用 Angular 6。
是的,我见过类似的主题,但我不明白答案。
看来我可能有一个旧版本的量角器,我找不到命名空间urlContains的方法until。我使用ExpectedConditions,它对我来说效果很好。
因此,使用预期条件,您可以编写如下代码:
expect(
browser.wait(
protractor.ExpectedConditions.urlContains("dashboard"), 5000
)
.catch(() => {return false})
).toBeTruthy(`Url match could not succced`);
Run Code Online (Sandbox Code Playgroud)
我喜欢使用 catch,这样脚本就不会在出现错误时停止。还将expect()标记一个测试用例(在阅读生成的报告时很有用)。
| 归档时间: |
|
| 查看次数: |
1864 次 |
| 最近记录: |