2016-09-07 73 views
0

我想检查disabled属性是而不是使用NightwatchJS button目前。NightwatchJS:如何检查属性是否不存在?

我试着做这些:

  • .assert.attributeContains('.phone-verify-btn', 'disabled', 'null')

  • .assert.attributeContains('.phone-verify-btn', 'disabled', null)

  • .assert.attributeContains('.phone-verify-btn', 'disabled', 'false')

  • .assert.attributeContains('.phone-verify-btn', 'disabled', false)

但这些似乎并没有工作,像他们这样做,以检查是否disabled设置为true像这样:

  • .assert.attributeContains('.phone-verify-btn', 'disabled', 'true')

这工作就好了!任何想法发生了什么?我得到的错误是非常模糊的:

Element does not have a disabled attribute. - expected "null" but got: null

回答

1

在这种情况下,我认为你应该得到第一属性,直到我们有更好的解决方案。这对我有用:

Browser.getAttribute('@element','disabled',function(result){ 
    if(result.value === 'true'){ 
     // element is disabled , do what you want 
    } 
    // element not disabled . 
    }) 

也许这不是合乎逻辑!

+0

我目前正在做这样的事情,但正在寻找一个干净的解决方案 – nikjohn

+0

这有帮助吗?稍微干净一些......'Browser.getAttribute('@ element','disabled',function(result){this.assert.equal(result.value,null)//元素不存在 })' –