Instancia de transportador vs navegador


He intentado buscar QA similares, pero no pude encontrar uno que me satisfaga. Así que básicamente vi que en algunos ejemplos se utiliza

ptor = protractor.getInstance();
ptor.get(url);

Y en algunos otros ejemplos se usa.

browser.get(url);

Entonces la pregunta es: ¿Cuál es la diferencia usando instancia de transportador y navegador para obtener url específicas? También si mi suposición en la PS es correcta, que es mejor práctica: utilizar solo transportador, o para mezclarlos?

P.d. También vi la misma diferencia en el uso con el depurador. Sé que el transportador es un controlador de envoltura sobre la web y asumo que el transportador.getInstance().get (url)es una invocatin implícita del navegador.get (url).

Author: Tek, 2014-02-03

2 answers

Browser es la nueva sintaxis preferida. browser es lo mismo que protractor.getInstance().

Hace unas pocas versiones se introdujo una nueva sintaxis. Los principales cambios fueron:

  • browser es una instancia de transportador
  • element(locator) es la nueva sintaxis para ptor.findElement(locator)
  • by[strategy] es la nueva sintaxis para protractor.By.[strategy]

Aquí está la nueva documentación: http://angular.github.io/protractor/#/api

 36
Author: Andres D,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-09-07 03:41:51

En el transportador código fuente que el navegador y el transportador instancia singleton son el mismo objeto.

var browser = protractor.wrapDriver(
    driver,
    config.baseUrl,
    config.rootElement);
browser.params = config.params;

protractor.setInstance(browser);

También podrías verificar esa afirmación en una de tus pruebas:

describe('My page', function() {
  it('should display something', function() {
    console.log('test ' + (protractor.getInstance() === browser));
    ...
  });
});

Mi preferencia es usar siempre la instancia singleton protractor. Pero creo que no hay ningún inconveniente para utilizar el navegador de instancia o ambos.

 4
Author: gontard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-02-03 13:38:44