如何检查元素是否已启用

arp*_*pho 8 angularjs protractor

我需要检查Protractor是否启用了我的角度应用程序中的按钮,因此这是我的测试:

    it('submit should not be enabled',function() {
      var price = by.name('price'),
          oldCategory = by.name('oldCategory'),
          newCategory = by.name('newCategory'),
          oldPayment = by.name('oldPayment'),
          newPayment = by.name('newPayment'),
          item = by.name('item'),
          submit = by.id('submitButton');
      expect(submit.isEnabled().toBe(false)); 
  });
Run Code Online (Sandbox Code Playgroud)

当我运行测试时,得到此错误:

 TypeError: Object By.name("price") has no method 'isEnabled'
Run Code Online (Sandbox Code Playgroud)

gon*_*ard 16

括号错位于expectation:

expect(submit.isEnabled().toBe(false));
Run Code Online (Sandbox Code Playgroud)

它应该是 :

expect(submit.isEnabled()).toBe(false);
Run Code Online (Sandbox Code Playgroud)

你滥用了protractor locator:

submit = by.id('submitButton');
Run Code Online (Sandbox Code Playgroud)

它应该是 :

submit = element(by.id('submitButton'));
Run Code Online (Sandbox Code Playgroud)

你可以在量角器规格中找到很多例子.