Protractor: Falló: Error mientras esperaba que el transportador se sincronizara con la página: "no se pudo encontrar angular en la ventana"

Creado en 28 ene. 2015  ·  52Comentarios  ·  Fuente: angular/protractor

Después de actualizar Protaractor a 1.6.1, webdriver, chromedriver, jasmine a 2.0, cuando intento ejecutar mis pruebas obtuve:

"Using ChromeDriver directly...
[launcher] Running 1 instances of WebDriver
Start test TC06_01_01_Binary_1_1
Started
Execute test TC06_01_01_Binary_1_1
Login as Admin
Execute script no 18
F

Failures:
1) TC06_01_01_Binary_1_1 TC06_01_01_Binary_1_1 Should be able to add record with different values
  Message:
    Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
  Stack:
    Error: Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
       at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\jasminewd2\index.js:104:1
6
        at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\go
og\base.js:1582:15
        at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (C:\Users\E2Euser\AppData\Roaming\npm\
node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:1654:20)
        at notify (C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdrive
r\lib\webdriver\promise.js:465:12)
  Message:
    Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the windo
w"
  Stack:
    Error: Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on th
e window"
        at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\jasminewd2\index.js:104:1
6
        at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\go
og\base.js:1582:15
        at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (C:\Users\E2Euser\AppData\Roaming\npm\
node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:1654:20)
        at notify (C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdrive
r\lib\webdriver\promise.js:465:12)
  Message:
    Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the windo
w"
  Stack:
    Error: Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on th
e window"
        at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\jasminewd2\index.js:104:1
6
        at C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\go
og\base.js:1582:15
        at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (C:\Users\E2Euser\AppData\Roaming\npm\
node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver\promise.js:1654:20)
        at notify (C:\Users\E2Euser\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdrive
r\lib\webdriver\promise.js:465:12)

1 spec, 1 failure
Finished in 1.409 seconds
[launcher] 0 instance(s) of WebDriver still running
[launcher] chrome #1 failed 1 test(s)
[launcher] overall: 1 failed spec(s)
[launcher] Process exited with error code 1"

¿Alguna idea de por qué no se puede encontrar Angular? o como debo arreglar esto?

needs investigation

Todos 52 comentarios

De hecho, he tenido exactamente el mismo problema en OSX.

... snip ...
Running "connect:test" (connect) task
Started connect web server on http://localhost:9001

Running "protractor:run" (protractor) task
Using the selenium server at http://127.0.0.1:4444/wd/hub
[launcher] Running 1 instances of WebDriver
Uncaught exception: Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
[launcher] Process exited with error code 1
>>
Fatal error: protractor exited with code: 1
... snip ...

Después de esto, la instancia de Chrome que se abrió permanece abierta en un estado colgado.

Hoy tengo el mismo problema en Mac OS. Después de cerrar todos los terminales y navegadores y volver a abrir este error, deténgase (al menos hasta ahora).

También estoy experimentando esto con la versión 2.0.0 .

incluso yo estoy enfrentando el mismo problema.

El miércoles 1 de abril de 2015 a las 11:03 a. M., Walter H. Roman [email protected]
escribió:

También estoy experimentando esto con la versión 2.0.0.

-
Responda a este correo electrónico directamente o véalo en GitHub
https://github.com/angular/protractor/issues/1760#issuecomment -88355894.

Yo también

lo mismo aquí, ¿por qué se cierra este problema?

la degradación a 1.8.0 solucionó este problema-

¿Llamas a browser.get() dentro de tu función onPrepare ? Ver # 1978

Estoy usando browser.get (), pero no creo que esté usando onPrepare, estoy ejecutando este ejemplo para todomvc angular - https://github.com/mknabe/angular-testing-starter/blob/ maestro / prueba / e2e / escenarios.js

protuberancia...

como @ cm325 obtengo el error "angular no se pudo encontrar en la ventana" cuando ejecuto 2.0.0 pero la degradación a 1.8.0 soluciona el problema

¡PROTUBERANCIA!

mismo problema después de actualizar a v2.1.0, tuve que degradar a 1.8.0 para solucionar el problema

Tener este mismo problema también en OSX

Editado - Fijo

Así que arreglé esto cambiando el siguiente código en uno de mis constructores de página:

this.currentUrl =  browser.getCurrentUrl();

Para

this.currentUrl = function(){
    return browser.getCurrentUrl();
  };

Mis pruebas estaban funcionando bien y sin ninguna razón esto apareció. No realicé cambios en el sistema o el código para causar esto. No puedo degradar, necesito 2.0. Hice la última solución para currentUrl y eso tampoco ayuda. Cualquier ayuda será increíble ...

Experimenté lo mismo el lunes. El viernes pasado todo estuvo bien, luego desde el lunes no puedo ejecutar ninguna prueba porque cuando es necesario cargar la página de inicio de sesión, que es una página no angular, aparece el mismo error. Intenté degradar el transportador a 1.8.0 y 1.4.0, nada, intenté cambiar el marco a 'jasmine2', nuevamente nada, no estoy usando browser.get in onPrepare. No tengo más idea de qué puedo intentar. Cualquier otra sugerencia, ¿qué puedo cambiar o probar? ¡Gracias!

También estoy experimentando el mismo problema aquí. : puño: golpe para más atención.
La degradación a 1.8.0 desde 2.1.0 no lo resolvió de inmediato ...

Tengo el mismo problema. Acabo de configurar un transportador con pepino-js, chai y chai-como-prometí. Tengo dos características muy básicas que prueban con pasos de muestra básicos. También estoy usando ES6 pretranspilado y cargado con SystemJS. No puedo averiguar cómo reproducir este problema de forma coherente. Aunque ahora mismo puedo hacerlo cambiando uno de mis pasos específicos para fallar intencionalmente. No estoy seguro de si se está ejecutando primero / último o por qué tiene que ser ese específico.

Ambos envoltorios de pasos se ven básicamente así:

var Promise = require('es6-promise').Promise;
var World = require("../support/world.js").World;

module.exports = function() {
    this.World = World;

    this.Given(/^Something exists$/, function() {
        browser.get('http://localhost:3000/');
        return Promise.all([
            expect(browser.getCurrentUrl()).to.eventually.equal('http://localhost:3000/#/dashboard'),
            expect(browser.getTitle()).to.eventually.equal('Dashboard')
        ]);
    });
};

¡Hola tios! Resolvimos el problema en nuestro proyecto. Pero, lamentablemente, no sé exactamente si el problema estaba en las versiones del transportador y de los reporteros jazmín o de alguna otra cosa. En algún momento de la prueba escribimos

element(by.id('logIn')).click().then(function (p) {
                browser.driver.wait(browser.driver.isElementPresent(by.id('Email')));
            });;

y algunos más así, y estas esperas se resuelven el problema.
Sé que no es lo mejor para resolver así, pero está funcionando por ahora y ese fue el primer punto, hacerlo funcionar.

@ Yok86 ¡ Acabo de probar su solución y funcionó! : +1:

Esto también es más ordenado que nuestra solución. Lanzamos un browser.debugger() al final de nuestro controlador onPrepare y eso pareció solucionar el problema de tiempo en juego, pero no tengo idea de por qué. Esto es mucho más limpio.

browser.driver.findElement(by.xpath("//*[@id='submit']")).click().then(function(p) {
      browser.driver.wait(browser.driver.getTitle().then(function (title) {
        return title == 'AppName';
      }));
    });

Tienen los mismos problemas:

Falló: Error mientras esperaba que el transportador se sincronizara con la página: "[ng: test] no se encontró ningún inyector para el argumento del elemento para getTestability \ nhttp: //errors.angularjs.org/1.4.5/ng/test "
Apilar:
Error: Falló: Error mientras esperaba que el transportador se sincronizara con la página: "[ng: test] no se encontró ningún inyector para el argumento del elemento para getTestability \ nhttp: //errors.angularjs.org/1.4.5/ng/test "
en la pila (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 1482: 17)
en buildExpectationResult (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 1452: 14)
en Spec.Env.expectationResultFactory (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 583: 18)
en Spec.addExpectationResult (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 324: 34)
en Suite.addExpectationResult (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 2123: 38)
en Env.fail (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 894: 25)
en Function.next.fail (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasmine-core \ lib \ jasmine-core \ jasmine.js: 1806: 19)
en c: \ Program Filesnodejsnode_modules \ protractornode_modules \ jasminewd2index.js: 101: 16
en [object Object] .promise.ControlFlow.runInFrame_ (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ webdriver \ promise.js: 1877: 20)
en [object Object] .promise.Callback_.goog.defineClass.notify (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ webdriver \ promise.js: 2464: 25)
en [object Object] .promise.Promise.notify_ (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ webdriver \ promise.js: 563: 12)
en Array.forEach (nativo)
en Object.goog.array.forEach (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ goog \ array \ array.js: 203: 43)
en [object Object] .promise.Promise.notifyAll_ (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ webdriver \ promise.js: 552: 16)
en goog.async.run.processWorkQueue (c: \ Program Filesnodejsnode_modules \ protractornode_modules \ selenium-webdriver \ lib \ goog \ async \ run.js: 125: 21)
en process._tickCallback (node.js: 356: 9)

El mismo error aquí en OSX, cuando se ejecuta con phantomjs. Funciona bien en Chrome

Error al esperar que Transportador se sincronice con la página: "[ng: test] http://errors.angularjs.org/1.4.3/ng/test "

Teniendo el mismo problema aquí, estaba funcionando bien pero ahora dejó de funcionar

Yo tambien estoy teniendo este problema

+1 El viernes pasado estaba funcionando bien, sin ninguna razón no funciona ahora

Esto es complicado. ¿Alguien puede trabajar para obtener un caso de prueba aislado y reproducible? No he podido reproducir esto de manera confiable por mi cuenta (aunque, para ser honesto, todavía no he investigado mucho).

Para resumir algunas de las publicaciones aquí, el error está presente con:

  • Versión: Transportador 2.x.x (además del problema del OP en 1.6.x )
  • Marcos: Jasmine 2
  • Navegadores: Chrome y PhantomJS
  • Plataformas: OSX y Windows
  • Páginas angulares / no angulares: ???

Que es bastante amplio por desgracia :(

@jessiahr @navarrojp @AndreasMaier ¿estaría interesado en ayudar a depurar esto? Podríamos usar la sala de gitter para coordinar.

Mismo problema:

  • Versión: Transportador 2.5.1
  • Marco: Jasmine 2
  • Navegadores: Chrome
  • Plataforma: OSX
  • Página angular

@mrzmyr gracias por los detalles. ¿Sería posible obtener una configuración y una especificación de ejemplo aislada donde pueda reproducir esto?

@NickTomlin Me encantaría tener una especificación de ejemplo o algo similar. Ni siquiera me fue posible reproducirlo en el mismo entorno. Parece un problema de tiempo para mí.

Tengo el mismo problema, en mi configuración tengo un onPrepare y esta línea está ahí.
browser.driver.get (targetUrl);

este error ocurre aproximadamente el 40% de las veces. no se porque.

jazmín 2.XX

Recibo el mismo problema que @mrzmyr :

Versión: última versión de Transportador
Marco: Jasmine 2
Navegadores: Chrome
Plataforma: OSX
Página angular

Voy a intentar bajar de categoría a 1.8 para ver si eso resuelve el problema. Es extraño, ya que las pruebas se realizaron ayer.

Hay un caso de prueba reproducible siguiendo el tutorial aquí . El caso de configuración / prueba que he usado está aquí como referencia. El tutorial no es el más preciso, sin embargo, reproduce el problema para mí.

[email protected]
Plataforma: OSX
Angular
Marco: Jasmine2
Navegador: Chrome

Este mensaje de error generalmente se debe a que se realizó algún tipo de navegación utilizando algo diferente a browser.get . browser.get , además de cambiar la URL, espera a que se cargue angular y arranca Transportador.

@ 61ue5peed su problema es que browser.driver.get no proporciona la misma sincronización y arranque. En tu causa, simplemente cambiaría de browser.driver.get a browser.get

@jennapederson En su caso, supongo que #becomeAwesome es un enlace y, al hacer clic en él, navega sin la sincronización y el arranque. En casos como el suyo, simplemente agregaría browser.refresh después de hacer clic en el enlace.

Otros informes parecen ser similares, así que voy a cerrar este tema. Si las personas pueden desencadenar este problema utilizando una prueba que se basa exclusivamente en borwser.get para la navegación, les sugiero que abran un nuevo problema.

Este problema aún se puede reproducir en la versión 3.3.1.
Estoy usando browser.get para navegar a mi página de inicio y falla la primera vez.

Solo para que todos sepan -> en mi caso, el problema fue un módulo angular externo que carga la API de Facebook ... el javascript de Facebook accedió a la estructura dom dentro de la aplicación angular e intentó cambiarla. Tuve que cambiar el módulo para evitar cargar el script de Facebook en la prueba.

También tengo este problema. No a menudo, pero lo suficiente como para ser un problema. Es una página Angular normal, nada externa o no angular al respecto. La prueba pasa la mayor parte del tiempo, pero a veces aparece este error y falla. Parece que no espera lo suficiente para que se cargue un modal. Siempre está en el mismo paso / prueba.

Transportador: 3.2.2
Transportador de pepino: 0.4.0

@drcjones
element (by.css (selector)). isPresent (). then (function (result) {
if (resultado) {
elemento (by.css (selector)). click ();
}
}, 20000);

Hola,

Encuentro el mismo problema. Estoy intentando obtener el título del navegador. ¿Estoy haciendo algo mal?

Failed: Angular could not be found on the page http://thetestroom.com/jsweba

pp /: angular nunca proporcionado resumeBootstrap
Apilar:
Error: Angular no se pudo encontrar en la página http://thetestroom.com/jswebap
p /: angular nunca proporcionado resumeBootstrap

`beforeEach (function () {

    browser.get('http://thetestroom.com/jswebapp/');
});

it('should test webpage title', function() {
    expect(browser.getTitle()).toEqual('Zoo Adoption | Home');
});`

Cualquier comentario será bueno.

No lo veo esperando Angular o esperando algún cambio de URL específico en el navegador o un elemento antes de obtener el título. Vea si esto ayuda.

browser.get (testUrl) .then (function () {
browser.wait (function () {
return browser.getCurrentUrl (). luego (function (url) {
return /thetestroom/.test(url);
});
}, 10000);
});

Comenzamos a ver este problema de forma intermitente en IE9. La actualización de 3.2.1 a 3.3.0 detuvo los errores.

Lo mismo aquí: la actualización de 3.2.1 a 3.3.0 solucionó esto para nosotros

Tengo el mismo error. usando cromo. cualquier sugerencia es impresionante. Gracias

config.js

exportaciones.config = {
directConnect: verdadero,
allScriptsTimeout: 1000,

// Capacidades que se pasarán a la instancia de webdriver.
capacidades: {
'browserName': 'chrome'
// 'browserName': 'firefox'
},

// Marco a utilizar. Se recomienda el jazmín.
marco: 'jazmín',

// Los patrones de especificación son relativos al directorio de trabajo actual cuando
// se llama transportador.
// especificaciones: ['example_spec.js'],
especificaciones: ['* _spec.js'],

seleniumAddress: ' http: // localhost : 8080 / McacApp / index.html',
baseUrl: ' http: // localhost : 8080 / McacApp / index.html',

// transportador-conf.js
rootElement: '.mcacApp',
// Opciones que se pasarán a Jasmine.
jasmineNodeOpts: {
defaultTimeoutInterval: 30000,

baseUrl: 'http://localhost:8080/McacApp/index.html',
jasmineNodeOpts: {
  onComplete: null,
  isVerbose: false,
  showColors: true,
  includeStackTrace: false
}

}

};
ejemplo.spec.js

describe ('Prueba rápida', función () {

it('Should do something', function() {

    browser.get('http://localhost:8080/McacApp/index.html');
   element(by.model('ctrl.formData.emailAddress')).sendKeys('emailAddress');
  // element(by.model('ctrl.formData.employmentType')).sendKeys('employmentType');
  element(by.xpath("//button[text()='Confirm']")).click();
  browser.sleep(10000);


    //expect (element(by.xpath("//ui-view/div/div[2]/div[1]/a/div/p"))).toEqual("Manage users and teams.");
    //expect(element(by.xpath("//ui-view/div/div[2]/div[2]/a/div/p"))).toEqual("Define metrics that drive your business.");
    //expect(element(by.xpath("//ui-view/div/div[2]/div[3]/a/div/p"))).toEqual("Create and modify leaderboards that display metrics.");

});

});

@ Karpo72 : ¿Podría proporcionar un ejemplo de este problema para la validación de correo electrónico y contacto?

Error: Falló: Error mientras esperaba que Transportador se sincronizara con la página: "[ng: test] http://errors.angularjs.org/1.4.7/ng/test "

Gracias, de verdad.

@reddynr No veo que esperes un elemento ni nada después de ti .get () la página. Debería. Ver ejemplos arriba en este hilo

En tu caso debería ser
browser.get(..).then(function() { browser.driver.wait(browser.driver.isElementPresent(by.model('ctrl.formData.emailAddress'))); // all remaining sendKeys, submit and assert code here. });

@ srajagopalan1712 Gracias por los comentarios. pero sigue recibiendo el mismo error. aquí está mi implementación.

Gracias, muy apreciado, si tiene alguna sugerencia.

describe ('mcacapp', function () {
it ('probando la funcionalidad del correo electrónico', function ()
{
browser.get ('http: // localhost: 8080 / McacApp / index.html'). then (function () {
browser.wait (function () {
return browser.getCurrentUrl (). luego (function (url) {
return /thetestroom/.test(url);
});
}, 10000);

});
elemento (por.modelo ('ctrl.formData.emailAddress')). sendKeys ('[email protected] ');
var greeting = element (by.binding ('ctrl.formData.emailAddress'));
esperar (saludo.getText ()). toEqual ('[email protected] ');
});
});

en lugar de esperar a que cambie la URL, espere a que el elemento emailAddress también esté presente. Pruebe también browser.driver.wait y browser.driver.getCurrentUrl. Mueva todos los demás códigos de prueba dentro del bloque get () ... {} también.

@ srajagopalan1712 Gracias por los comentarios. Pero sigue recibiendo el mismo error. ¿Podría proporcionar un ejemplo de trabajo que sería de gran ayuda?

Muchas gracias.

Veo arriba que tienes return /thetestroom/.test(url); en el código anterior. Ese fue un ejemplo que le di a otra persona para su URL en una respuesta anterior. Cambie 'thetestroom' aquí por el aspecto que tenga su URL. Debería haber tenido tiempo de espera aquí en lugar de un problema angular.
Aquí está el código que tengo para resolver este problema.

 homepage.myButton.click().then(function() {
     browser.driver.wait(function() {
        return browser.driver.getCurrentUrl().then(function(url) {
          return url.includes('......'); // checks if the new url has what you are looking for in ...    
     }); // this waits until the url changes to whatever it should be in ....
    }, 25000, "URL hasn't changed").then(function() {
   // after url changed, in new page check these 
   // pec is protractor expected condition.
    // See http://www.protractortest.org/#/api?view=ProtractorExpectedConditions
     browser.wait(pec.visibilityOf(homepage.feedTitle), 20000); 
     expect(homepage.feedTitle.getText()).toContain('.....');
      expect(homepage.feedBody.getText()).toContain('.....');  
  });

@ saradha,

Muchas gracias. Déjame implementar de esta manera.

¡Narendra ...!

El 7 de octubre de 2016 a las 15:52, Saradha [email protected] escribió:

Veo arriba que tienes return /thetestroom/.test(url); en el código
encima. Ese fue un ejemplo que le di a otra persona para su URL en un
respuesta anterior. Cambie 'thetestroom' aquí a la URL que desee
parece. Deberías haber tenido tiempo de espera aquí en lugar de angular
asunto.
Aquí está el código que tengo para resolver este problema.

homepage.myButton.click (). luego (function () {
browser.driver.wait (function () {
return browser.driver.getCurrentUrl (). luego (function (url) {
return url.includes ('......'); // comprueba si la nueva URL tiene lo que está buscando en ...
}); // esto espera hasta que la URL cambie a lo que debería ser ...
}, 25000, "URL no ha cambiado"). Luego (función () {
// después de cambiar la URL, en la nueva página verifique estos
// pec es la condición esperada del transportador.
// Ver http://www.protractortest.org/#/api ? View = ProtractorExpectedConditions
browser.wait (pec.visibilityOf (homepage.feedTitle), 20000);
esperar (página de inicio.feedTitle.getText ()). toContain ('.....');
esperar (página de inicio.feedBody.getText ()). toContain ('.....');
});

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/angular/protractor/issues/1760#issuecomment -252345767,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AViSFrR5k79AQWfZVEm6J1qTSEPvMjfnks5qxqMXgaJpZM4DYTza
.

@Saradha ,

Muchas gracias por tus comentarios.

Me aparece el siguiente error. Por favor avise si hay alguna solución. Gracias.

en ejecución: npm run dev

Error: no se puede encontrar el módulo './internal/streams/BufferList'

¡Narendra ...!

El 17 de octubre de 2016 a las 16:48, narendra Reddy narendra. [email protected] escribió:

@ saradha,

Muchas gracias. Déjame implementar de esta manera.

¡Narendra ...!

El 7 de octubre de 2016 a las 15:52, Saradha [email protected] escribió:

Veo arriba que tienes return /thetestroom/.test(url); en el código
encima. Ese fue un ejemplo que le di a otra persona para su URL en un
respuesta anterior. Cambie 'thetestroom' aquí a la URL que desee
parece. Deberías haber tenido tiempo de espera aquí en lugar de angular
asunto.
Aquí está el código que tengo para resolver este problema.

homepage.myButton.click (). luego (function () {
browser.driver.wait (function () {
return browser.driver.getCurrentUrl (). luego (function (url) {
return url.includes ('......'); // comprueba si la nueva URL tiene lo que está buscando en ...
}); // esto espera hasta que la URL cambie a lo que debería ser ...
}, 25000, "URL no ha cambiado"). Luego (función () {
// después de cambiar la URL, en la nueva página verifique estos
// pec es la condición esperada del transportador.
// Ver http://www.protractortest.org/#/api ? View = ProtractorExpectedConditions
browser.wait (pec.visibilityOf (homepage.feedTitle), 20000);
esperar (página de inicio.feedTitle.getText ()). toContain ('.....');
esperar (página de inicio.feedBody.getText ()). toContain ('.....');
});

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/angular/protractor/issues/1760#issuecomment -252345767,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AViSFrR5k79AQWfZVEm6J1qTSEPvMjfnks5qxqMXgaJpZM4DYTza
.

Algo en tu base de código. No parece un error angular / transportador
Yo se de.

Enviado desde mi iPhone

El 19 de octubre de 2016, a las 7:54 p.m., narendra [email protected] escribió:

@Saradha ,

Muchas gracias por tus comentarios.

Me aparece el siguiente error. Por favor avise si hay alguna solución. Gracias.

en ejecución: npm run dev

Error: no se puede encontrar el módulo './internal/streams/BufferList'

¡Narendra ...!

El 17 de octubre de 2016 a las 16:48, narendra Reddy narendra. [email protected] escribió:

@ saradha,

Muchas gracias. Déjame implementar de esta manera.

¡Narendra ...!

El 7 de octubre de 2016 a las 15:52, Saradha [email protected] escribió:

Veo arriba que tienes return /thetestroom/.test(url); en el código
encima. Ese fue un ejemplo que le di a otra persona para su URL en un
respuesta anterior. Por favor cambie 'thetestroom' aquí por cualquiera que sea su URL
voluntad
parece. Deberías haber tenido tiempo de espera aquí en lugar de angular
asunto.
Aquí está el código que tengo para resolver este problema.

homepage.myButton.click (). luego (function () {
browser.driver.wait (function () {
return browser.driver.getCurrentUrl (). luego (function (url) {
return url.includes ('......'); // comprueba si la nueva URL tiene lo que eres
buscando en ...
}); // esto espera hasta que la URL cambie a lo que debería ser ...
}, 25000, "URL no ha cambiado"). Luego (función () {
// después de cambiar la URL, en la nueva página verifique estos
// pec es la condición esperada del transportador.
// Ver
http://www.protractortest.org/#/api ? view = ProtractorExpectedConditions
browser.wait (pec.visibilityOf (homepage.feedTitle), 20000);
esperar (página de inicio.feedTitle.getText ()). toContain ('.....');
esperar (página de inicio.feedBody.getText ()). toContain ('.....');
});

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
< https://github.com/angular/protractor/issues/1760#issuecomment -252345767
,
o silenciar el hilo
<
https://github.com/notifications/unsubscribe-auth/AViSFrR5k79AQWfZVEm6J1qTSEPvMjfnks5qxqMXgaJpZM4DYTza

.

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/angular/protractor/issues/1760#issuecomment -254996166,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AKCDZXWuZX7dJ0R2V2sHgxKqwydQV8o3ks5q1tfngaJpZM4DYTza
.

Hola srajagopalan1712,

Estoy ejecutando un ejemplo en el transportador que aparece debajo del error. ¿Podría darme un consejo? Gracias

error:

goog.global.setTimeout (function () {lanzar excepción;}, 0);
^
Error al esperar que Transportador se sincronice con la página: "[ng: test] http://errors.angularjs.org/1.4.7/ng/test "

aqui esta mi codigo

describe ('Prueba de mi aplicación', function () {

      browser.get('http://localhost:port/integrated/myWeb.html').then(function() {


    browser.wait(function() {
        return browser.getCurrentUrl().then(function(url) {
            return 'http://localhost:port/integrated/myWeb.html';

            element(by.model('ctrl.formData.emailAddress')).sendKeys('').clear();
            element(by.model('ctrl.formData.emailAddress')).sendKeys('[email protected]');
            element(by.model('ctrl.formData.emailAddress')).getAttribute('value').then(function (value) {
                expect(value).toEqual('[email protected]');
            });

        });
    }, 10000);
});

Gracias a todos,

problema resuelto por la etiqueta ng-app agregada en la página html.

Estaba viendo el mismo error con las pruebas de Angular 5. Tal vez esto sea obvio, pero no sabía que necesitabas iniciar "ng serve" por separado antes de ejecutar tus pruebas e2e si quieres depurar. Aquí está la discusión donde encontré la respuesta:
https://github.com/angular/angular-cli/issues/4183

¡Espero que esto ayude a alguien!

¿Fue útil esta página
0 / 5 - 0 calificaciones