问题描述
我不太明白 $ 和 $$ 命令的用途.我认为它们只是by.css"的替代品,但为什么要使用 $$?
I don't really understand what the $ and $$ commands are for. I thought they are just a replacement for 'by.css' but why the $$?
<element id = "eId"></element>
我认为,鉴于上述情况,这些将是等效的:
I thought, that given the above, these would be equivalent:
element(by.css('#eId'));
和
element($('#eId'));
但是,第一个有效,第二个无效.为什么,这三者有什么区别?
However, the first one works and the second doesn't. Why, what's the difference between the three?
docs 帮助不大.他们似乎暗示$"仅用于链接,例如element(by.css('#eId')).element($('#childId')); 或选择第一个元素,然后选择第一个元素内的第二个元素."但是,我已经看到使用 $ 来选择第一个元素的示例.
The docs are of little help. They seem to imply that "$" is for chaining only, e.g. element(by.css('#eId')).element($('#childId')); or "Select the first element, and then select the second element within the first element.' However, I have seen examples with $ being used to select the first element.
不管怎样,这三个(by.css、$ 和 $$)之间有什么区别?"的文字很多.
Anyway, that's a lot of text for "What are the differences between the three (by.css, $, and $$)?"
推荐答案
$ 和 $$ 只是方便的快捷方式.
$ and $$ are just convenient shortcuts.
$("selector") 是 element(by.css("selector")) 的替代品.
$$("selector") 是 element.all(by.css("selector")) 的替代品.
仅供参考,引用自 源代码:p>
FYI, quote from the source code:
ElementFinder.prototype.$ = function(selector) {
return this.element(webdriver.By.css(selector));
};
ElementArrayFinder.prototype.$$ = function(selector) {
return this.all(webdriver.By.css(selector));
};
以及最初实现它的实际提交.
这篇关于量角器“by.css()"vs“$()"美元符号与“$$()"'亮闪闪'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!



大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)