当通过标签名称搜索元素时,我们可以这样做:
element(by.tagName("my-tag-name"));
或者,我们也可以这样做:
element(by.css("my-tag-name")); // or $("my-tag-name")
在查看其他人的合并请求时,我经常看到后者。可能是因为by.css()
通常被更广泛地使用,并且人们经常忘记使用专门的定位器。
按标签名称搜索时,两者之间在功能或性能上有什么区别吗?
答案 0 :(得分:3)
在量角器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>)
。