Protractor: рддреНрд░реБрдЯрд┐: рдЯрд╛рдЗрдордЖрдЙрдЯ - рдЬреИрд╕реНрдореАрди рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЗ рднреАрддрд░ Async рдХреЙрд▓рдмреИрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред DEFAULT_TIMEOUT_INTERVAL

рдХреЛ рдирд┐рд░реНрдорд┐рдд 19 рдлрд╝рд░ре░ 2016  ┬╖  26рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/protractor

рдореИрдВ " http://www.protractortest.org/#/tutorial " рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ

// spec.js
describe('Protractor Demo App', function() {
  it('should have a title', function() {
    browser.get('http://juliemr.github.io/protractor-demo/');

    expect(browser.getTitle()).toEqual('Super Calculator');
  });
});

// conf.js
exports.config = {
  framework: 'jasmine',
  seleniumAddress: 'http://localhost:4444/wd/hub',
  specs: ['spec.js']
}

рдЕрдм рдЗрд╕рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдБ

protractor conf.js

рдлрд┐рд░ рдХрдВрд╕реЛрд▓ рдбрд┐рд╕реНрдкреНрд▓реЗ:
image

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@sallojusuresh , рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдЪрдореЗрд▓реА рдиреЛрдбрдСрдкреНрдЯреНрд╕: {
рдбрд┐рдлрд╝реЙрд▓реНрдЯрдЯрд╛рдЗрдордЖрдЙрдЯрдЕрдВрддрд░рд╛рд▓: 2500000
},
рдкреНрд░рд╢реНрди - рдЬрдм рд╣рдо рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ 'рдкрд╣рд▓реЗ' рдореЗрдВ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ 'рдЗрдЯ' рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдИ рдЙрдкрд╛рдп?

рд╕рднреА 26 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдк рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдкреЛрд╕реНрдЯ рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ: рдмрд╕ рдкреВрд░реА рдкреЛрд╕реНрдЯ рджреЗрдЦреЗрдВред

https://github.com/angular/protractor/issues/2941#issuecomment -186104304

рдХреНрдпрд╛ рдЖрдк рд╕реЗрд▓реЗрдирд┐рдпрдо рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ? рдпрджрд┐ рдЖрдк directConnect рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдкреБрд░рд╛рдиреЗ рдореБрджреНрджреЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ред

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░реА рдкреЛрд╕реНрдЯ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИред
@juliemr рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрд╛рдп? рдореИрдВрдиреЗ allScriptsTimeout рдХреА рдХреЛрд╢рд┐рд╢ рдХреА: 900000 рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдврд╝рд╛рдПрдВрдЯрд╛рдЗрдордЖрдЙрдЯрдЗрдВрдЯрд░рд╡рд▓ рдЗрд╕реЗ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

@juliemr рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ ScriptsTimeout рдмрдврд╝рд╛рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ? рд╢реБрдХреНрд░рд┐рдпрд╛ред

рдирдорд╕реНрддреЗ,

рдореИрдВ рдЯрд╛рдЗрдо рдЖрдЙрдЯ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдореЗрдВ рдПрдХ рдЯреЗрд╕реНрдЯ рдХреЗрд╕ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣рд╛рдБ рд╡рд┐рд╡рд░рдг рд╣реИред рдХреГрдкрдпрд╛ рд╕рд▓рд╛рд╣ рджреЗрдВред рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рдж

рддреНрд░реБрдЯрд┐: рдЯрд╛рдЗрдордЖрдЙрдЯ - рдЬреИрд╕реНрдореАрди рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЗ рднреАрддрд░ Async рдХреЙрд▓рдмреИрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред DEFAULT_TIMEOUT_INTERVALред

рдирдореВрдирд╛_рд╕реНрдкреЗрдХ.рдЬреЗрдПрд╕

рд╡рд░реНрдгрди рдХрд░реЗрдВ ('рдореИрдХреИрдХ рдРрдк рдкрд░реАрдХреНрд╖рдг', рдлрд╝рдВрдХреНрд╢рди() {
browser.get ('http://localhost:3000/integrated/myWeb.html');
рдкреНрд░рддреНрдпреЗрдХ рд╕реЗ рдкрд╣рд▓реЗ (рдлрд╝рдВрдХреНрд╢рди (рдХрд┐рдпрд╛ рдЧрдпрд╛) {
window.jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ (рдлрд╝рдВрдХреНрд╢рди () {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдЗрдирд╕рд╛рдЗрдб рдЯрд╛рдЗрдордЖрдЙрдЯ');
рдХрд┐рдпрд╛ рд╣реБрдЖ();
}, 50000);
});
//browser.get(' http://localhost:3000/integrated/myWeb.html');
// browser.get ('http://localhost:3000/integrated/myWeb.html').then(function() {
рдпрд╣ ('рдИрдореЗрд▓ рдкрддрд╛ рд╕рддреНрдпрд╛рдкрди', рдлрд╝рдВрдХреНрд╢рди ()
{

        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);

// рддрддреНрд╡ (by.xpath ("// рдмрдЯрди [рдкрд╛рда () = 'рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ']"))ред рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ();
рдмреНрд░рд╛рдЙрдЬрд░.рд╕реНрд▓реАрдк (5000);

});

config.js

// рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ред
рдПрдХреНрд╕рдкреЛрд░реНрдЯреНрд╕.рдХреЙрдиреНрдлрд┐рдЧ = {
рдбрд╛рдпрд░реЗрдХреНрдЯ рдХрдиреЗрдХреНрдЯ: рд╕рдЪ,

// рд╡реЗрдмрдбреНрд░рд╛рдЗрд╡рд░ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
рдХреНрд╖рдорддрд╛рдПрдВ: {
'рдмреНрд░рд╛рдЙрдЬрд╝рд░рдирд╛рдо': 'рдХреНрд░реЛрдо'
},

// рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлреНрд░реЗрдорд╡рд░реНрдХред рдЪрдореЗрд▓реА рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рд╣реИред
рдврд╛рдВрдЪрд╛: 'рдЪрдореЗрд▓реА',

// рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрдЯрд░реНрди рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм
// рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
// рдЪрд╢реНрдорд╛: ['example_spec.js'],
// рдЪрд╢реНрдорд╛: ['mcac_spec.js'],
// рдЪрд╢реНрдорд╛: ['mcac_spec_mobile.js'],
рдЪрд╢реНрдорд╛: ['mcac_online.js'],
// рдЬреИрд╕реНрдореАрди рдХреЛ рджрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рдХрд▓реНрдкред
рдЪрдореЗрд▓реА рдиреЛрдбрдСрдкреНрдЯреНрд╕: {
рдбрд┐рдлрд╝реЙрд▓реНрдЯрдЯрд╛рдЗрдордЖрдЙрдЯрдЕрдВрддрд░рд╛рд▓: 5000
}

};

рдХрд┐рд╕реА рднреА рдорджрдж рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреАред

рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдореБрджреНрджрд╛ рдерд╛ рдФрд░ рдпрд╣ рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ $timeout ( $timeout рдмреНрд▓реЙрдХ рдкреНрд░реЛрдЯреЗрдХреНрдЯрд░ рдХреЗ рдХрд╛рд░рдг рдерд╛, рдЬрдмрдХрд┐ $interval рдирд╣реАрдВ)ред

рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ $рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рддрддреНрд╡ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

$ protractor config/protractor.js --elementExplorer
Starting debugger agent.
Debugger listening on port 5858
> var body = element(by.css('body'))
> body.isPresent()
ScriptTimeoutError: Timed out waiting for asynchronous Angular tasks to finish after 15 seconds. This may be because the current page is not an Angular application. Please see the FAQ for more details: https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting-for-angular
While waiting for element with locator - Locator: By(css selector, body). 
The following tasks were pending:
 - $timeout: function () {
        // ......
    }

рд╢реБрдХреНрд░рд┐рдпрд╛ред

рдореБрдЭреЗ рдореБрджреНрджрд╛ рдорд┐рд▓рд╛ред рдЗрд╕рдХреА рд╡рдЬрд╣ рдпрд╣ рд╣реИ рдХрд┐ url рд▓реЛрдб рд╣реЛрдиреЗ рдореЗрдВ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рддрд▓рд╛рд╢ рд╣реЛрддреА рд╣реИ
рдПрдЪрдЯреАрдПрдордПрд▓ рдкреЗрдЬ рдореЗрдВ рдПрдирдЬреА-рдРрдк рдЯреИрдЧред

рд╕рд╛рджрд░,
рдирд░реЗрдВрджреНрд░

рдирд░реЗрдВрджреНрд░...!

15 рджрд┐рд╕рдВрдмрд░ 2016 рдХреЛ 06:12 рдмрдЬреЗ рдПрдореА рдмреЙрдпрдб рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдереА рдФрд░ рдпрд╣ рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ $timeout ($timeout .) рдХреЗ рдХрд╛рд░рдг рдерд╛
рдмреНрд▓реЙрдХ рдкреНрд░реЛрдЯреИрдХреНрдЯрд░, рдЬрдмрдХрд┐ $interval рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ)ред

рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ $рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдХреЗ рддрддреНрд╡ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ,
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

$ рдЪрд╛рдВрджрд╛ config/protractor.js --elementExplorer
рдбреАрдмрдЧрд░ рдПрдЬреЗрдВрдЯ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдирд╛ред
рдбрд┐рдмрдЧрд░ рдкреЛрд░реНрдЯ 5858 . рдкрд░ рд╕реБрди рд░рд╣рд╛ рд╣реИ

рд╡рд░ рд╢рд░реАрд░ = рддрддреНрд╡ (by.css ('рдмреЙрдбреА'))
body.isPresent ()
ScriptTimeoutError: рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХреЛрдгреАрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ 15 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡рд░реНрддрдорд╛рди рдкреГрд╖реНрда рдПрдХ рдХреЛрдгреАрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рдЕрдХреНрд╕рд░ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрди рджреЗрдЦреЗрдВ: https://github.com/angular/protractor/blob/master/docs/timeouts.md#waiting -for-angular
рд▓реЛрдХреЗрдЯрд░ рдХреЗ рд╕рд╛рде рддрддреНрд╡ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп - рд▓реЛрдХреЗрдЯрд░: рджреНрд╡рд╛рд░рд╛ (рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛, рд╢рд░реАрд░)ред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рд▓рдВрдмрд┐рдд рдереЗ:

  • $ рдЯрд╛рдЗрдордЖрдЙрдЯ: рдлрд╝рдВрдХреНрд╢рди () {
    // ......
    }

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/angular/protractor/issues/2963#issuecomment-267302567 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AViSFkiN29oWnH6AJ0P_wNY_LNzE2fglks5rISCYgaJpZM4Hd20v
.

рдирдорд╕реНрддреЗ,

рдореИрдВ рдЯрд╛рдЗрдо рдЖрдЙрдЯ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдореЗрдВ рдПрдХ рдЯреЗрд╕реНрдЯ рдХреЗрд╕ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣рд╛рдБ рд╡рд┐рд╡рд░рдг рд╣реИред рдХреГрдкрдпрд╛ рд╕рд▓рд╛рд╣ рджреЗрдВред рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рдж

рд╡рд┐рдлрд▓: 30 рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХреЛрдгреАрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡рд░реНрддрдорд╛рди рдкреГрд╖реНрда рдПрдХ рдХреЛрдгреАрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдирд╣реАрдВ рд╣реИред

@sallojusuresh , рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдЪрдореЗрд▓реА рдиреЛрдбрдСрдкреНрдЯреНрд╕: {
рдбрд┐рдлрд╝реЙрд▓реНрдЯрдЯрд╛рдЗрдордЖрдЙрдЯрдЕрдВрддрд░рд╛рд▓: 2500000
},
рдкреНрд░рд╢реНрди - рдЬрдм рд╣рдо рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ 'рдкрд╣рд▓реЗ' рдореЗрдВ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ 'рдЗрдЯ' рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдИ рдЙрдкрд╛рдп?

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рддрдп рдХрд┐рдпрд╛ рд╣реИ

 var originalTimeout;

    beforeEach(function() {
        originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
        jasmine.DEFAULT_TIMEOUT_INTERVAL = 10000;
    });

    afterEach(function() {
      jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
    });

рд╢реБрдХреНрд░рд┐рдпрд╛ред

рдирд░реЗрдВрджреНрд░...!

11 рдорд╛рд░реНрдЪ 2018 рдХреЛ 23:53 рдмрдЬреЗ, рдореЛрд╣рдореНрдордж рдЬрд╝рд╣реАрд░реБрд▓ рд╣рдХ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рддрдп рдХрд┐рдпрд╛ рд╣реИ

` рд╡рд░ рдореВрд▓ рдЯрд╛рдЗрдордЖрдЙрдЯ;

рдкрд╣рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ (рдлрд╝рдВрдХреНрд╢рди() {
рдореВрд▓ рдЯрд╛рдЗрдордЖрдЙрдЯ = рдЪрдореЗрд▓реАредDEFAULT_TIMEOUT_INTERVAL;
рдЪрдореЗрд▓реАредDEFAULT_TIMEOUT_INTERVAL = 10000;
});

рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдмрд╛рдж (рдлрд╝рдВрдХреНрд╢рди() {
рдЪрдореЗрд▓реАредDEFAULT_TIMEOUT_INTERVAL = рдореВрд▓ рд╕рдордп рд╕рдорд╛рдкреНрдд;
});`

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/angular/protractor/issues/2963#issuecomment-372187210 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AViSFg7ITAW3XW5zky_-QXXmAudt11qDks5tdfE1gaJpZM4Hd20v
.

@NickTomlin рдЖрдкрдиреЗ рдЕрднреА рдореЗрд░рд╛ рджрд┐рди рдмрдирд╛рдпрд╛ :) рдореИрдВрдиреЗ рдбрд╛рдпрд░реЗрдХреНрдЯрдХрдиреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдХреБрдЫ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдХрд┐ рдбрд╛рдпрд░реЗрдХреНрдЯрдХрдиреЗрдХреНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рддреНрд░реБрдЯрд┐ "fixture.detectChanges ()" рдХреЗ рдЕрдиреБрдЪрд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдХрд╛рд░рдг рд╣реБрдИ рдереА рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рдзрд┐ рдПрдХ рдИрд╡реЗрдВрдЯ рд╢реНрд░реЛрддрд╛ (async) рд╣реИ рдЬреЛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрддрд╛ рдЪрд▓рдиреЗ рдкрд░ рдХреЗрд╡рд▓ рдХреЙрд▓рдмреИрдХ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдЧрд╛ред рдпрджрд┐ рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдХреЙрд▓рдмреИрдХ рдХрд╛ рдЖрд╣реНрд╡рд╛рди рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЯрд╛рдЗрдордЖрдЙрдЯ рддреНрд░реБрдЯрд┐ рд╣реЛрдЧреАред рдЙрдореНрдореАрдж рд╣реИ рдХреА рдпрд╣ рдорджрдж рдХрд░реЗрдЧрд╛ :)

@juliemr рдЯрд╛рдЗрдордЖрдЙрдЯ - рдЬреИрд╕реНрдореАрди рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЗ рднреАрддрд░ Async рдХреЙрд▓рдмреИрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред DEFAULT_TIMEOUT_INTERVALред рдпрд╣ рддреНрд░реБрдЯрд┐ рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЖ рд░рд╣реА рд╣реИ n рдлрд┐рд░ рд╕реЗ рдореИрдВрдиреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗ рдкрд╣рд▓реЗ, рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдмрд╛рдж, browser.sleep рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЪрдореЗрд▓реА рдЯрд╛рдЗрдордЖрдЙрдЯ рдЗрдЯрд░реНрд╡рд▓ рдХреЛ 100000 рддрдХ рдмрдврд╝рд╛ рджрд┐рдпрд╛ред рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдХреЛрдб рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рдореБрдЭреЗ рд╕реБрдЭрд╛рд╡ рджреЗрдВ рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реА рдФрд░ 300000 рддрдХ рдЪрдореЗрд▓реА рдХреЗ рд╕рдордп рдХреЛ рдмрдврд╝рд╛рдХрд░ рд╣рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рд╕реБрдЭрд╛рд╡ рджреЗрдВ рдХрд┐ рдореБрдЭреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдЖрдк рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдпрджрд┐ рдЖрдк рдЧреИрд░-рдХреЛрдгреАрдп рдРрдк рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЧреЛрдЯреЛ рд░рдирд░.рдЬреЗрдПрд╕ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕/рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░/рдмрд┐рд▓реНрдЯ рдкрд░
рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрди # 210 рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВForAngularEnabled: рдЧрд▓рдд // рд╕рддреНрдп

@juliemr рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ред

рдЖрдк рдЗрд╕реЗ onPrepare() рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

onPrepare: async () => {
    await browser.waitForAngularEnabled(false);
    ....
}

рдореБрдЭреЗ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓реА, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рдХрд╛рдо рдирд╣реАрдВ рдЖрдПред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдордп рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлрд╝реНрд▓реЛ рдкрд░ рдореЗрд░реЗ рдкреНрд░рд╢реНрди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд░реЗрдкреЛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╕рдВрднрд╡ рд╣реИред
https://stackoverflow.com/questions/53786401/error-debugging-protractor-with-node-8-async-await-and-angular-6

рдЕрдкреЗрдХреНрд╖рд┐рдд рдЕрд╕рддреНрдп рд╕реЗ рдмрд░рд╛рдмрд░ рд╕рддреНрдп рдХреНрдпреЛрдВрдХрд┐: рдХрдВрд╕реЛрд▓ рдореЗрдВ рдореМрдЬреВрдж рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ: рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ {
рд▓реЗрд╡рд▓: рд▓реЗрд╡рд▓ {name_: 'SEVERE', value_: 1000},
рд╕рдВрджреЗрд╢:
"рддреНрд░реБрдЯрд┐" рддреНрд░реБрдЯрд┐: рдлреЙрд░реНрдордЧреНрд░реБрдк рдлреЙрд░реНрдордЧреНрд░реБрдк рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдПрдХ рдкрд╛рд╕ рдХрд░реЗрдВред\n\n рдЙрджрд╛рд╣рд░рдг:\n\n \n

\рдПрди \рдПрди
\n\n рдЖрдкрдХреА рдХрдХреНрд╖рд╛ рдореЗрдВ:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });\n Function.e.missingFormException рдкрд░

рдкреЙрдк рдЕрдк рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛ рдЖ рд░рд╣реА рд╣реИ, рдХреЛрдИ рд╕рдорд╛рдзрд╛рди?

рдореБрдЭреЗ рдкреЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЖрдпрд╛рдд рдкрд░ HttpClientModule рдЬреЛрдбрд╝рдХрд░ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░ рд▓реА рд╣реИ:

рдкрд╣рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ (() => {

TestBed.configureTestingModule({

    declarations: [],

    providers: [ CookieService, HttpClient],  

    imports: [HttpClientModule],
});

});

рдореБрдЭреЗ рдкреЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЖрдпрд╛рдд рдкрд░ HttpClientModule рдЬреЛрдбрд╝рдХрд░ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░ рд▓реА рд╣реИ:

рдкрд╣рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ (() => {

TestBed.configureTestingModule({

    declarations: [],

    providers: [ CookieService, HttpClient],  

    imports: [HttpClientModule],
});

});

рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдПрдХ рдЯреЗрд╕реНрдЯрдмреЗрдб рдХреЗ рдЕрдВрджрд░ HttpClientModule рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВред рдпрд╣ рдЖрдкрдХреЗ рдПрдкреАрдЖрдИ рдХреЛ рдЖрдкрдХреЗ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╡реЗ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред HttpClientTestingModule рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛

@sallojusuresh , рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдЪрдореЗрд▓реА рдиреЛрдбрдСрдкреНрдЯреНрд╕: {
рдбрд┐рдлрд╝реЙрд▓реНрдЯрдЯрд╛рдЗрдордЖрдЙрдЯрдЕрдВрддрд░рд╛рд▓: 2500000
},
рдкреНрд░рд╢реНрди - рдЬрдм рд╣рдо рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ 'рдкрд╣рд▓реЗ' рдореЗрдВ рд╕реЗрдЯрдЯрд╛рдЗрдордЖрдЙрдЯ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ 'рдЗрдЯ' рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдИ рдЙрдкрд╛рдп?

рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ рдмрд╕ рдХреЛрдб рдХреЗ рдЗрд╕ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдЕрдкрдиреА рдХреЙрдиреНрдлрд╝рд┐рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреЗрд╕реНрдЯ рдХрд░реЗрдВ, рдЗрд╕рд╕реЗ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

premkh9 picture premkh9  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gamecheck80 picture gamecheck80  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

andyman3693 picture andyman3693  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

amedvedjev picture amedvedjev  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rafalf picture rafalf  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ