【问题标题】:Protractor + Jasmine 2量角器+茉莉花2
【发布时间】:2015-12-29 15:30:28
【问题描述】:

我在远程服务器的共享文件夹中有配置和规格文件。我通过控制台从本地机器运行测试:

C:\Users\User>量角器\remoteServer\AutoSPA\config\protractor.conf.js 使用 jasmine 框架一切正常,但如果我在 protractor.conf.js 中设置 framework: 'jasmine2' 测试不会运行:

正在启动 selenium 独立服务器... [启动器] 运行 1 个 WebDriver 实例 Selenium 独立服务器开始于http://10.17.175.168:50910/wd/hub 开始

未找到规格 在 0.001 秒内完成 未捕获的异常:等待量角器与页面同步时出错:“在窗口上找不到角度” [启动器] 进程退出,错误代码 1

示例: conf.js:

exports.config  =  {
    specs: ['./test.js'],    
    capabilities : {'browserName' : 'chrome'},
    framework: 'jasmine2',
    jasmineNodeOpts: {showColors: true}
};

test.js 在同一个文件夹中:

describe("test", function(){
    it("navigate", function(){        
        browser.get("https://angularjs.org/")
    })
});

如果是本地文件夹,它可以正常工作,但如果是远程文件夹,则找不到 spec test.js。

【问题讨论】:

  • 您的测试中有ddescribe()iit() 吗?当您只想运行这些套件/测试时,Jasmine 2 使用 fdescribe()fit()。它不会将 ddescribe 识别为套件。
  • 不,我们根本不使用 ddescribe 和 fdescribe,iit 和 fit。我认为,问题在于项目源在远程机器上,而 node_modules 在我的本地机器上。使用 Jasmine 1.3 可以使用,但使用 Jasmine 2 则不行。
  • 你用的是什么版本的量角器,selenium-webdriver?作为调试步骤,如果它是非角度页面,您能否确保在开始执行之前设置browser. ignoreSynchronization=true。谢谢
  • 我尝试了不同的 Protractor 版本 >=2.0 和相关的网络驱动程序。这个问题不取决于浏览器。 ignoreSynchronization 和我使用的页面。例如我的 conf = { specs: ['./test.js'], capabilities : {'browserName' : 'chrome'}, framework: 'jasmine2', jasmineNodeOpts: {showColors: true} };
  • 我添加了一个例子来提问。

标签: jasmine protractor


【解决方案1】:

我进行了更多调查和调试,发现 Jasmine 1.3 使用 FS 和 Path 进行规格搜索,但 Jasmine 2 使用 GLOB。 Glob 不适用于远程路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 2014-12-12
    • 2015-12-05
    相关资源
    最近更新 更多