tutorial example español javascript angularjs selenium testing protractor

javascript - example - Transportador "by.css()" frente a "$()" Signo de dólar frente a "$$()" ''Bling Bling''



protractor vs selenium (1)

$ y $$ son solo accesos directos convenientes.

$("selector") es una alternativa para element(by.css("selector")) .

$$("selector") es una alternativa para element.all(by.css("selector")) .

FYI, cita del código fuente :

ElementFinder.prototype.$ = function(selector) { return this.element(webdriver.By.css(selector)); }; ElementArrayFinder.prototype.$$ = function(selector) { return this.all(webdriver.By.css(selector)); };

Y el compromiso real que inicialmente lo hizo posible.

Realmente no entiendo para qué son los comandos $ y $$. Pensé que son solo un reemplazo para ''by.css'' pero ¿por qué el $$?

<element id = "eId"></element>

Pensé, que dado lo anterior, estos serían equivalentes:

element(by.css(''#eId''));

y

element($(''#eId''));

Sin embargo, el primero funciona y el segundo no. ¿Por qué, cuál es la diferencia entre los tres?

Los docs son de poca ayuda. Parecen implicar que "$" es solo para encadenamiento, por ejemplo element(by.css(''#eId'')).element($(''#childId'')); o "Seleccione el primer elemento, y luego seleccione el segundo elemento dentro del primer elemento. '' Sin embargo, he visto ejemplos con $ siendo utilizado para seleccionar el primer elemento.

De todos modos, eso es mucho texto para "¿Cuáles son las diferencias entre los tres (by.css, $ y $$)?"