当通过标签名搜索元素时,我们可以这样做:
element(by.tagName("my-tag-name"));
或者,我们也可以这样做:
element(by.css("my-tag-name")); // or $("my-tag-name")
我在审查其他人的合并请求时经常看到后者。可能是因为 by.css()
在一般情况下使用更广泛,人们常常忘记有一个专门的定位器。
按标签名搜索时,两者在功能或性能上有什么区别吗?
最佳答案
在 Protractor 中 by.tagName
和 by.css
继承自 webdriver.WebDriver
,
内部 webdriver.WebDriver implement , by.tagName
将转换为调用 by.css
如下:
/**
* Locates elements with a given tag name.
*
* @param {string} name The tag name to search for.
* @return {!By} The new locator.
* @deprecated Use {@link By.css() By.css(tagName)} instead.
*/
static tagName(name) {
return By.css(name);
}
所以 by.tagName(<tag name>)
相当于by.css(<tag name>)
在 Protractor 中。
关于javascript - Protractor 中的 by.tagName 与 by.css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53877435/