Mic*_*iel 42 angularjs protractor e2e-testing
在量角器端到端测试中,我想检查一个元素是否存在使用元素(by.css(...)),我的代码:
var myElement = element(by.css('.elementClass'));
expect(myElement).toBeUndefined;
Run Code Online (Sandbox Code Playgroud)
该测试失败,它说:
Expected { locator_ : { using : 'css selector', value : 'div[ng-switch-
when="resultNav"]' }, parentElementFinder_ : null, opt_actionResult_ :
undefined, opt_index_ : undefined, click : Function, sendKeys : Function,
getTagName : Function, getCssValue : Function, getAttribute : Function, getText
: Function, getSize : Function, getLocation : Function, isEnabled : Function,
isSelected : Function, submit : Function, clear : Function, isDisplayed :
Function, getOuterHtml : Function, getInnerHtml : Function, toWireValue :
Function } to be undefined.
Run Code Online (Sandbox Code Playgroud)
之后我尝试使用一个承诺:
element(by.css('.elementClass')).then( functtion(data) {
expect(data.getText()).toBeUndefined();
});
Run Code Online (Sandbox Code Playgroud)
这会导致错误:
var myElement = element(by.css('.elementClass'));
expect(myElement).toBeUndefined;
Run Code Online (Sandbox Code Playgroud)
是的,我知道不会找到任何元素,但是如何使用element(by.css(...))创建工作测试?
有谁知道如何实现这一目标?或者是元素(by.css())不是在这里使用的方法?
Dav*_*yon 92
你可以测试它是否element存在isPresent. 以下是该isPresent函数的量角器文档.
所以,你的代码将是这样的:
var myElement = element(by.css('.elementClass'));
expect(myElement.isPresent()).toBeFalsy();
Run Code Online (Sandbox Code Playgroud)
JB *_*zet 24
您需要测试元素是否不存在:
expect(element(by.css('.elementClass')).isPresent()).toBe(false);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
72001 次 |
| 最近记录: |