web-dev-qa-db-fra.com

Rapporteur: Erreur lors de l'attente de la synchronisation de Protractor avec la page: "la testabilité angularJS et la testabilité angular ne sont pas définies

J'essaie d'écrire des tests de bout en bout et j'ai refusé d'utiliser async et d'attendre.

fichier de configuration

exports.config = {
    framework: 'jasmine',
    seleniumAddress: 'http://localhost:4444/wd/hub',
    specs: ['spec.js'],
    Selenium_PROMISE_MANAGER: false,
    getPageTimeout: 10000,
    multiCapabilities: [
        {
            browserName: 'firefox'
        }, {
            browserName: 'chrome'
        }
    ]
}

fichier spec

    describe('home-view', function(){

    beforeEach(async function(){

        await browser.get('http://localhost:49335/index.html#!/home');

    });

    it('sorted by firstname', async function(){

        await element(by.css("[ng-click=\"sortData('firstname')\"]")).click();
        var firstname = element.all(by.repeater('a in emps')).all(by.css('td'));     
        expect(await firstname.get(0).getText()).toEqual('abraham');

    });

})

Erreur Erreur lors de l'attente de la synchronisation de Protractor avec la page: "la testabilité angularJS et la testabilité angular sont indéfinies. Cela peut être dû au fait qu'il s'agit d'une page non angulaire ou parce que votre test implique le client - navigation latérale, ce qui peut interférer avec l'amorçage de Protractor. "

Pourquoi ai-je cette erreur? Merci

6
Thunfische

Donnez à getPageTimeOut plus de 20 secondes. Utilisez l'attente explicite comme browser.sleep (2000) après la méthode browser.get. L'erreur survenue peut être due à la lenteur de la réponse de la page Web et à l'utilisation de dirctConnect au lieu de seleniumAddress.

0
Dixit_Autobot

Plus tôt Tout ce dont j'avais besoin pour l'ajouter dans mon script.js browser.driver.ignoreSynchronization = true;

Cependant, l'ajout de ceci a résolu mon problème. browser.waitForAngularEnabled (false);

Donc, tout à fait final script.js est

describe('My first non angular class', function() {
    it('My function', function() {
        browser.driver.ignoreSynchronization = true;
        browser.waitForAngularEnabled(false);
        browser.driver.manage().window().maximize();
        //browser.get('http://juliemr.github.io/protractor-demo/');
        browser.driver.get('https://stackoverflow.com/users/login');
        element(by.id('email')).sendKeys('6');

    })

}) 
0
Sameera De Silva