首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >量角器:让测试用例等待认证完成。

量角器:让测试用例等待认证完成。
EN

Stack Overflow用户
提问于 2018-05-11 11:31:00
回答 3查看 709关注 0票数 0

我正在开发一个应用程序,在这个应用程序中,我使用browser.get('app url')加载一个页面,然后它重新路由到一些不同的URL进行身份验证,提示输入凭证,然后转到主页( app url),同时页面完成身份验证测试用例开始运行。问题是,一些初始测试用例在等待Protractor与页面同步时出现了错误:“angularJS可测试性和角可测性都未定义,这可能是因为这是一个非角页,或者是因为您的测试涉及客户端导航,这可能会干扰Protractor的引导。”

我一直在查找git/stackoverflow/等等,但是可以找到解决这个问题的任何帮助。

EN

回答 3

Stack Overflow用户

发布于 2018-05-11 14:56:52

这里有两次试验

  • 如果您在量角器测试中使用了异步/等待方法,等待关键字可以帮助您的代码行等待上一步的完成。
  • 如果测试中的应用程序是完全非角度的,则在量角器配置文件中标记`browser.ignoreSynchronization =true。

谢谢

票数 0
EN

Stack Overflow用户

发布于 2018-05-14 04:47:15

试试这样的东西:-

1)导航到主页2)页面将打开并重路由到登录页3)您可以将目标url (即登录页URL)发送到函数以等待重定向。4)一旦重定向设置同步= false 5)完整的登录过程6)诱导selenium等待7)设置同步= true

下面是一个示例函数,用于检查URL是否已更改。函数中内置了一个等待,它将帮助同步调用。

代码语言:javascript
复制
waitForURLToChange(target, time) {
    console.log(target);
    let timeout = time
    return browser.driver.wait(function () {
      return browser.driver.getCurrentUrl().then(function (actualUrl) {
        console.log(actualUrl.indexOf(target));        
        return actualUrl.indexOf(target) > -1;     
      });
    }, timeout);

};

票数 0
EN

Stack Overflow用户

发布于 2020-11-05 17:29:18

对我来说,缺少的东西是page.navigateTo()在beforeEach里面,加上它消除了问题-

代码语言:javascript
复制
import { AppPage } from './app.po';
beforeEach(async () => {
    page = new AppPage();
    page.navigateTo();
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50291409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档