(量角器e2e)出错"A Jasmine Spec超时:重置WebDriver控制流程"

Gho*_*ore 6 selenium jasmine angularjs protractor

希望有人可以帮助我解决这个问题,因为我一直在寻找几天没有成功

我目前正在尝试使用Protractor进行AngularJS应用程序的e2e测试

我有Protractor设置并运行测试,但是当我有多个测试/规范时,第一个测试运行,然后在命令行中出现以下错误:

茉莉花规格超时了.重置WebDriver控制流.最后一个活动任务是:未知

我的config.js如下:

// conf.js
exports.config = {
  seleniumAddress: 'http://localhost:4444/wd/hub',
  specs: ['spec.js','fileupload.js'],
  allScriptsTimeout: 20000,

  // Options to be passed to Jasmine-node.
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 100000,
    isVerbose: true
  }
};
Run Code Online (Sandbox Code Playgroud)

这是我的茉莉花测试

// spec.js

describe('Site login', function () {
    it('should login', function () {
        browser.driver.get('http://mysite.co.uk');
        browser.driver.findElement(by.name('UserName')).sendKeys('user');
        browser.driver.findElement(by.name('Password')).sendKeys('xpassword');
        browser.driver.findElement(by.id('logIn')).click();

        expect(browser.driver.findElement(by.id('topUsername')).getText()).toContain('user');

        browser.close();
    });
});
Run Code Online (Sandbox Code Playgroud)

//文件上传规范

describe('File Upload', function() {
    it('should upload a file', function () {
        browser.driver.get('http://mysite.co.uk');
        browser.driver.findElement(by.name('UserName')).sendKeys('user');
        browser.driver.findElement(by.name('Password')).sendKeys('xpassword');
        browser.driver.findElement(by.id('logIn')).click();

        browser.driver.findElement(by.id('upload')).click(); 
        browser.driver.findElement(by.name('FileToUpload')).sendKeys("C:\\myfile.csv"); 
        browser.driver.findElement(by.xpath('html/body/div[1]/div[7]/div[2]/div/button[2]/span')).click(); 
        console.log('file has been uploaded');
        });
    });
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激

PS道歉,如果我格式化错了,第一次海报:)

编辑:通过npm update更新到Protractor v1.0.0解决了问题

非常感谢大家的帮助:)

小智 1

参考 框架:'jasmine2',

这对于你的量角器配置我已经有同样的问题好几天了!让我知道是否有帮助!