Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 本机量角器测试示例未运行_Angularjs_Node.js_Selenium_Protractor - Fatal编程技术网

Angularjs 本机量角器测试示例未运行

Angularjs 本机量角器测试示例未运行,angularjs,node.js,selenium,protractor,Angularjs,Node.js,Selenium,Protractor,我是新来的量角器,在安装了所有东西之后,我试着运行量角器提供的测试示例来测试是否一切正常。显然,它没有 以下是我正在使用的几个版本的信息: 节点v6.11.3| npm v3.10.10| java 1.8| selenium webdriver 3.5| chrome浏览器60.0| 量角器5.1.2 这是我正在尝试运行的conf.js: // An example configuration file. exports.config = { directConnect: true,

我是新来的量角器,在安装了所有东西之后,我试着运行量角器提供的测试示例来测试是否一切正常。显然,它没有

以下是我正在使用的几个版本的信息:

节点v6.11.3| npm v3.10.10| java 1.8| selenium webdriver 3.5| chrome浏览器60.0| 量角器5.1.2

这是我正在尝试运行的conf.js:

// An example configuration file.
exports.config = {
  directConnect: true,

  // Capabilities to be passed to the webdriver instance.
  capabilities: {
    'browserName': 'chrome'
  },

  // Framework to use. Jasmine is recommended.
  framework: 'jasmine',

  // Spec patterns are relative to the current working directory when
  // protractor is called.
  specs: ['example_spec.js'],

  // Options to be passed to Jasmine.
  jasmineNodeOpts: {

     defaultTimeoutInterval: 30000

  }
};
示例规范:

describe('angularjs homepage', function() {
  it('should greet the named user', function() {
    browser.get('http://www.angularjs.org');

    element(by.model('yourName')).sendKeys('Julie');

    var greeting = element(by.binding('yourName'));

    expect(greeting.getText()).toEqual('Hello Julie!');
  });

  describe('todo list', function() {
    var todoList;

    beforeEach(function() {
      browser.get('http://www.angularjs.org');

      todoList = element.all(by.repeater('todo in todoList.todos'));
    });

    it('should list todos', function() {
      expect(todoList.count()).toEqual(2);
      expect(todoList.get(1).getText()).toEqual('build an AngularJS app');
    });

    it('should add a todo', function() {
      var addTodo = element(by.model('todoList.todoText'));
      var addButton = element(by.css('[value="add"]'));

      addTodo.sendKeys('write a protractor test');
      addButton.click();

      expect(todoList.count()).toEqual(3);
      expect(todoList.get(2).getText()).toEqual('write a protractor test');
    });
  });
});
这就是它抛出的错误:

Failures:
1) angularjs homepage should greet the named user
  Message:
    Failed: Timed out waiting for asynchronous Angular tasks to finish after 11 seconds. This may be because the current page is not an Angular application. Please see the FAQ for more details: https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-for-angular
    While waiting for element with locator - Locator: by.model("yourName")
  Stack:
    ScriptTimeoutError: asynchronous script timeout: result was not received in 11 seconds
      (Session info: chrome=60.0.3112.113)
      (Driver info: chromedriver=2.32.498513 (2c63aa53b2c658de596ed550eb5267ec5967b351),platform=Linux 3.16.0-4-amd64 x86_64)
        at WebDriverError (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5)
        at ScriptTimeoutError (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:203:5)
        at Object.checkLegacyResponse (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:505:15)
        at parseHttpResponse (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
        at doSend.then.response (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:440:13)
        at process._tickCallback (internal/process/next_tick.js:109:7)
    From: Task: Protractor.waitForAngular() - Locator: by.model("yourName")
        at Driver.schedule (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:816:17)
        at ProtractorBrowser.executeAsyncScript_ (/usr/lib/node_modules/protractor/lib/browser.ts:609:24)
        at angularAppRoot.then (/usr/lib/node_modules/protractor/lib/browser.ts:643:23)
        at ManagedPromise.invokeCallback_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1366:14)
        at TaskQueue.execute_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2970:14)
        at TaskQueue.executeNext_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2953:27)
        at asyncRun (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2813:27)
        at /usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:676:7
        at process._tickCallback (internal/process/next_tick.js:109:7)Error
        at ElementArrayFinder.applyAction_ (/usr/lib/node_modules/protractor/lib/element.ts:482:23)
        at ElementArrayFinder.(anonymous function) [as sendKeys] (/usr/lib/node_modules/protractor/lib/element.ts:96:21)
        at ElementFinder.(anonymous function) [as sendKeys] (/usr/lib/node_modules/protractor/lib/element.ts:873:14)
        at UserContext.<anonymous> (/usr/lib/node_modules/protractor/example/example_spec.js:5:35)
        at /usr/lib/node_modules/protractor/node_modules/jasminewd2/index.js:112:25
        at new ManagedPromise (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1067:7)
        at ControlFlow.promise (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2396:12)
        at schedulerExecute (/usr/lib/node_modules/protractor/node_modules/jasminewd2/index.js:95:18)
        at TaskQueue.execute_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2970:14)
        at TaskQueue.executeNext_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2953:27)
    From: Task: Run it("should greet the named user") in control flow
        at UserContext.<anonymous> (/usr/lib/node_modules/protractor/node_modules/jasminewd2/index.js:94:19)
    From asynchronous test: 
    Error
        at Suite.<anonymous> (/usr/lib/node_modules/protractor/example/example_spec.js:2:3)
        at Object.<anonymous> (/usr/lib/node_modules/protractor/example/example_spec.js:1:63)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10)
        at Module.load (module.js:487:32)
        at tryModuleLoad (module.js:446:12)

3 specs, 1 failure
Finished in 16.136 seconds

[09:34:24] I/launcher - 0 instance(s) of WebDriver still running
[09:34:24] I/launcher - chrome #01 failed 1 test(s)
[09:34:24] I/launcher - overall: 1 failed spec(s)
[09:34:24] E/launcher - Process exited with error code 1
故障:
1) angularjs主页应欢迎指定用户
信息:
失败:等待异步角度任务在11秒后完成时超时。这可能是因为当前页面不是角度应用程序。有关更多详细信息,请参阅常见问题解答:https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-角的
等待带有定位器的元素时-locator:by.model(“yourName”)
堆栈:
ScriptTimeoutError:异步脚本超时:在11秒内未收到结果
(会话信息:chrome=60.0.3112.113)
(驱动程序信息:chromedriver=2.32.498513(2c63aa53b2c658de596ed550eb5267ec5967b351),平台=Linux 3.16.0-4-amd64 x8664)
在WebDriverError(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/error.js:27:5)
在ScriptTimeoutError(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/error.js:203:5)
在Object.checkLegacyResponse(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/error.js:505:15)
在parseHttpResponse(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/http.js:509:13)
在doSend.then.response(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/http.js:440:13)
在进程中。_tick回调(内部/process/next_tick.js:109:7)
From:Task:dragrator.waitForAngular()-Locator:by.model(“您的名字”)
在Driver.schedule(/usr/lib/node_modules/dragrator/node_modules/selenium-webdriver/lib/webdriver.js:816:17)
位于gragrantorbrowser.executeAsyncScript_(/usr/lib/node_modules/grantor/lib/browser.ts:609:24)
在angularAppRoot.then(/usr/lib/node_modules/dragrator/lib/browser.ts:643:23)
在ManagedPromise.invokeCallback上(/usr/lib/node\u modules/dragrator/node\u modules/selenium webdriver/lib/promise.js:1366:14)
在TaskQueue.execute处(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:2970:14)
位于TaskQueue.executeNext(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:2953:27)
异步运行时(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:2813:27)
at/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:676:7
在进程中。_tickCallback(internal/process/next_tick.js:109:7)错误
位于ElementArrayFinder.applyAction(/usr/lib/node\u modules/dragrator/lib/element.ts:482:23)
在ElementArrayFinder.(匿名函数)[作为sendKeys](/usr/lib/node_modules/dragrator/lib/element.ts:96:21)
at ElementFinder.(匿名函数)[as sendKeys](/usr/lib/node_modules/dragrator/lib/element.ts:873:14)
在UserContext。(/usr/lib/node_modules/dragrator/example/example_spec.js:5:35)
at/usr/lib/node_modules/dragrator/node_modules/jasminewd2/index.js:112:25
在新的ManagedPromise(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:1067:7)
位于ControlFlow.promise(/usr/lib/node_modules/gragrator/node_modules/selenium webdriver/lib/promise.js:2396:12)
在ScheduleExecute(/usr/lib/node_modules/dragrator/node_modules/jasminewd2/index.js:95:18)
在TaskQueue.execute处(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:2970:14)
位于TaskQueue.executeNext(/usr/lib/node_modules/dragrator/node_modules/selenium webdriver/lib/promise.js:2953:27)
From:Task:在控制流中运行它(“应该问候指定用户”)
在UserContext。(/usr/lib/node_modules/dragrator/node_modules/jasminewd2/index.js:94:19)
从异步测试:
错误
在套房。(/usr/lib/node_modules/dragrator/example/example_spec.js:2:3)
反对。(/usr/lib/node_modules/dragrator/example/example_spec.js:1:63)
在模块处编译(Module.js:570:32)
在Object.Module.\u extensions..js(Module.js:579:10)
在Module.load(Module.js:487:32)
在tryModuleLoad时(module.js:446:12)
3个规格,1个故障
以16秒136结束
[09:34:24]I/launcher-WebDriver的0个实例仍在运行
[09:34:24]I/launcher-chrome#01测试失败1次
[09:34:24]I/launcher-总体:1个规格失败
[09:34:24]E/启动器-进程已退出,错误代码为1
显然,它声称网页不是一个角度应用程序,这是不可能的,因为这个测试是由量角器本身进行的示例测试,以查看是否一切正常。我什么也没写。 运行测试时,chrome将打开并加载角度网页。然后,它显然试图做“某事”,但失败了,然后打开另一个页面,将字符串“write a Gradutor test”写入该页面上的输入标签中。之后,浏览器关闭


有人知道这里出了什么问题吗?我开始感到非常沮丧。我已经尝试解决这个问题4天了

在conf.js中添加allScriptsTimeout,量角器官方网站说:


尝试在等级库文件中添加以下步骤

      browser.IgnoreSynchronization = true;

运行时,您是否注意到页面:是否已打开?是的,它已打开。您是否有任何浏览器插件处于活动状态?如果你安装了不同的驱动程序,你可以很容易地尝试其他浏览器。我猜你有一些版本问题。您的selenium webdriver很旧(3.5已经过时),您的chrome版本非常新。更新量角器、webdriver和ChromeDriver更新了一切,selenium版本i
      browser.IgnoreSynchronization = true;