Protractor: рд╡рд┐рдлрд▓: рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рд╕рдордиреНрд╡рдпрд┐рдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "рд╡рд┐рдВрдбреЛ рдкрд░ рдХреЛрдгреАрдп рдирд╣реАрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрд╛"

рдХреЛ рдирд┐рд░реНрдорд┐рдд 28 рдЬрдире░ 2015  ┬╖  52рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/protractor

рдЕрджреНрдпрддрди рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рдмрд╛рдж 1.6.1, рд╡реЗрдмрдбреНрд░рд╛рдЗрд╡рд░, рдХреНрд░реЛрдореЗрдбреНрд░рд┐рд╡рд░, рдЬреИрд╕реНрдореАрди рдЯреВ 2.0, рдЬрдм рдореИрдВ рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдорд┐рд▓рд╛:

"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"

рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдХреНрдпреЛрдВ рдХреЛрдгреАрдп рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ? рдпрд╛ рдореБрдЭреЗ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

needs investigation

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

рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдУрдПрд╕рдПрдХреНрд╕ рдкрд░ рдпрд╣ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

... 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 ...

рдЗрд╕рдХреЗ рдмрд╛рдж, рдХреНрд░реЛрдо рдХрд╛ рдЬреЛ рдЙрджрд╛рд╣рд░рдг рдЦреБрд▓рд╛ рдерд╛ рд╡рд╣ рддреНрд░рд┐рд╢рдВрдХреБ рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рдЦреБрд▓рд╛ рд░рд╣рддрд╛ рд╣реИред

рдореИрдХ рдУрдПрд╕ рдкрд░ рдореБрдЭреЗ рдЖрдЬ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╕рднреА рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдФрд░ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХреЗ рдмрд╛рдж (рдХрдо рд╕реЗ рдХрдо рдЕрдм рддрдХ)ред

рдореИрдВ рдЗрд╕реЗ 2.0.0 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рднреА рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВ рднреА рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред

рдмреБрдзрд╡рд╛рд░, 1 рдЕрдкреНрд░реИрд▓, 2015 рдХреЛ рдкреВрд░реНрд╡рд╛рд╣реНрди 11:03 рдмрдЬреЗ, рд╡рд╛рд▓реНрдЯрд░ рдПрдЪ. рд░реЛрдорди рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

рдореИрдВ рдЗрд╕реЗ 2.0.0 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рднреА рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/angular/protractor/issues/1760#issuecomment -88355894ред

рдореИрдВ рднреА

рдпрд╣рд╛рдБ рд╡рд╣реА, рдпрд╣ рдореБрджреНрджрд╛ рдХреНрдпреЛрдВ рдмрдВрдж рд╣реИ?

1.8.0 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИ-

рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ onPrepare рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ browser.get() рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ? рджреЗрдЦреЗрдВ #1978

рдореИрдВ browser.get() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдореИрдВ onPrepare рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ angular todomvc рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ - https://github.com/mknabe/angular-testing-starter/blob/ рдорд╛рд╕реНрдЯрд░/рдЯреЗрд╕реНрдЯ/рдИ2рдИ/рдкрд░рд┐рджреГрд╢реНрдп.рдЬреЗрдПрд╕

рдЯрдХреНрдХрд░...

рдЬреИрд╕реЗ @ cm325 рдореБрдЭреЗ 2.0.0 рдЪрд▓рд╛рддреЗ рд╕рдордп "рд╡рд┐рдВрдбреЛ рдкрд░ рдХреЛрдгреАрдп рдирд╣реАрдВ рдорд┐рд▓рд╛" рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди 1.8.0 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИ

рдЯрдХреНрдХрд░!

v2.1.0 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛, рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 1.8.0 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдирд╛ рдкрдбрд╝рд╛

OSX рдкрд░ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ

рд╕рдВрдкрд╛рджрд┐рдд - рдлрд┐рдХреНрд╕реНрдб

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдПрдХ рдкреЗрдЬ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХреЛ рдмрджрд▓рдХрд░ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛:

this.currentUrl =  browser.getCurrentUrl();

рдкреНрд░рддрд┐

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

рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдг рдареАрдХ рдЪрд▓ рд░рд╣реЗ рдереЗ рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рдпрд╣ рджрд┐рдЦрд╛ред рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдо рдпрд╛ рдХреЛрдб рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдореБрдЭреЗ 2.0 рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ currentUrl рдХреЗ рд▓рд┐рдП рдЖрдЦрд┐рд░реА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд┐рдпрд╛ рдерд╛ рдФрд░ рдЗрд╕рд╕реЗ рднреА рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред рдХреЛрдИ рдорджрдж рдХрдорд╛рд▓ рдХреА рд╣реЛрдЧреА..

рдореБрдЭреЗ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рднреА рдРрд╕рд╛ рд╣реА рдЕрдиреБрднрд╡ рд╣реБрдЖ рд╣реИред рдкрд┐рдЫрд▓реЗ рд╢реБрдХреНрд░рд╡рд╛рд░ рдХреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рдерд╛, рдлрд┐рд░ рд╕реЛрдорд╡рд╛рд░ рд╕реЗ рдореИрдВ рдХреЛрдИ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдЪрд▓рд╛ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рд▓реЙрдЧрд┐рди рдкреГрд╖реНрда рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдПрдХ рдЧреИрд░-рдХреЛрдгреАрдп рдкреГрд╖реНрда рд╣реИ, рддреЛ рдореБрдЭреЗ рд╡рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдХреЛ 1.8.0 рдФрд░ 1.4.0 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛, рдХреБрдЫ рднреА рдирд╣реАрдВ, рдврд╛рдВрдЪреЗ рдХреЛ 'рдЬреИрд╕реНрдореАрди 2' рдореЗрдВ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдлрд┐рд░ рдХреБрдЫ рднреА рдирд╣реАрдВ, рдореИрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдСрдирдкреЗрдпрд░ рдореЗрдВ рдЬрд╛рдУред рдореБрдЭреЗ рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдХреЛрдИ рдЕрдиреНрдп рд╕реБрдЭрд╛рд╡, рдореИрдВ рдХреНрдпрд╛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реВрдВ рдпрд╛ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ? рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рдпрд╣рд╛рдБ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред : рдореБрдЯреНрдареА: рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП
2.1.0 рд╕реЗ 1.8.0 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдЗрд╕рдХрд╛ рддреБрд░рдВрдд рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реБрдЖ...

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

рджреЛрдиреЛрдВ рдЪрд░рдг рд░реИрдкрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВ:

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')
        ]);
    });
};

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ! рд╣рдордиреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ред рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореБрдЭреЗ рдареАрдХ рд╕реЗ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдФрд░ рдЪрдореЗрд▓реА-рд░рд┐рдкреЛрд░реНрдЯрд░реНрд╕ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдереА рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЗ рд╕рд╛рде рдереАред рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рд╣рдордиреЗ рд▓рд┐рдЦрд╛

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

рдФрд░ рдХреБрдЫ рдРрд╕реЗ рд╣реА, рдФрд░ рдЗрди рдкреНрд░рддреАрдХреНрд╖рд╛рдУрдВ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╣рд▓ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд╣рд▓рд╛ рдмрд┐рдВрджреБ рдерд╛ред

@ Yok86 рдмрд╕ рдЕрдкрдиреЗ рдлрд┐рдХреНрд╕ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛! :+1:

рдпрд╣ рд╣рдорд╛рд░реЗ рдХрд╛рдордХрд╛рдЬ рд╕реЗ рднреА рдЖрд╕рд╛рди рд╣реИред рд╣рдордиреЗ рдЕрдкрдиреЗ onPrepare рд╣реИрдВрдбрд▓рд░ рдХреЗ рдЕрдВрдд рдореЗрдВ рдПрдХ browser.debugger() рдлреЗрдВрдХ рджрд┐рдпрд╛ рдФрд░ рдпрд╣ рдЦреЗрд▓ рдореЗрдВ рд╕рдордп рдХреЗ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреНрдпреЛрдВред рдпрд╣ рдЬреНрдпрд╛рджрд╛ рд╕рд╛рдл рд╣реИред

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

рдПрдХ рд╣реА рдореБрджреНрджреЗ рд╣реИрдВ:

рд╡рд┐рдлрд▓: рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рд╕рдордиреНрд╡рдпрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "[рдПрдирдЬреА: рдкрд░реАрдХреНрд╖рдг] рддрддреНрд╡ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЗрдВрдЬреЗрдХреНрдЯрд░ рдирд╣реАрдВ рдорд┐рд▓рд╛ getTestability\ nhttp://errors.angularjs.org/1.4.5/ng/test "
рдвреЗрд░:
рддреНрд░реБрдЯрд┐: рд╡рд┐рдлрд▓: рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рд╕рдордиреНрд╡рдпрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "[рдПрдирдЬреА: рдкрд░реАрдХреНрд╖рдг] рддрддреНрд╡ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЗрдВрдЬреЗрдХреНрдЯрд░ рдирд╣реАрдВ рдорд┐рд▓рд╛ getTestability\ nhttp://errors.angularjs.org/1.4.5/ng/test "
рд╕реНрдЯреИрдХ рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:1482:17)
buildExpectationResult рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:1452:14)
Spec.Env.expectationResultFactory рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:583:18)
Spec.addExpectationResult рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:324:34)
Suite.addExpectationResult рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:2123:38)
Env.fail рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:894:25)
Function.next.fail рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\jasmine-core\lib\jasmine-core\jasmine.js:1806:19)
c:\Program Filesnodejsnode_modules\protractornode_modules\jasminewd2index.js:101:16 рдкрд░
[рдСрдмреНрдЬреЗрдХреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ] рдкрд░ред Promise.ControlFlow.runInFrame_ (c:\Program Filesnodejsnode_modules\protractornode_modules\selenium-webdriver\lib\webdriver\promise.js:1877:20)
[рд╡рд╕реНрддреБ рд╡рд╕реНрддреБ] рдкрд░ред
[рдСрдмреНрдЬреЗрдХреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ] рдкрд░ред Promise.Promise.notify_ (c:\Program Filesnodejsnode_modules\protractornode_modules\selenium-webdriver\lib\webdriver\promise.js:563:12)
Array.forEach (рдореВрд▓) рдкрд░
Object.goog.array.forEach рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\selenium-webdriver\lib\goog\array\array.js:203:43)
[рд╡рд╕реНрддреБ рд╡рд╕реНрддреБ] рдкрд░ред рд╡рд╛рджрд╛ред
goog.async.run.processWorkQueue рдкрд░ (c:\Program Filesnodejsnode_modules\protractornode_modules\selenium-webdriver\lib\goog\async\run.js:125:21)
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ._рдЯрд┐рдХ рдХреЙрд▓рдмреИрдХ (рдиреЛрдб.рдЬреЗрдПрд╕:356:9)

рдУрдПрд╕рдПрдХреНрд╕ рдкрд░ рд╡рд╣реА рддреНрд░реБрдЯрд┐, рдЬрдм рдлреИрдВрдЯрдордЬ рдХреЗ рд╕рд╛рде рдЪрд▓ рд░рд╣рд╛ рд╣реЛред рдХреНрд░реЛрдо рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рдкреЗрдЬ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "[рдПрдирдЬреА: рдЯреЗрд╕реНрдЯ] http://errors.angularjs.org/1.4.3/ng/test "

рдпрд╣рд╛рдБ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЕрдм рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИ

рдореБрдЭреЗ рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ

+1 рдкрд┐рдЫрд▓рд╛ рд╢реБрдХреНрд░рд╡рд╛рд░ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛, рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдпрд╣ рдкреЗрдЪреАрджрд╛ рд╣реИ. рдХреНрдпрд╛ рдХреЛрдИ рдкреГрдердХ рдФрд░ рдкреБрдирд░реБрддреНрдкрд╛рджрд┐рдд рдкрд░реАрдХреНрд╖рдг рдХреЗрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреЗ рджрдо рдкрд░ рдордЬрд╝рдмреВрддреА рд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реВрдБ (рд╣рд╛рд▓рд╛рдБрдХрд┐, рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдПрдХ рдЯрди рдЦреБрджрд╛рдИ рдирд╣реАрдВ рдХреА рд╣реИ)ред

рдпрд╣рд╛рдВ рдХреБрдЫ рдкрджреЛрдВ рдХреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреНрд░реБрдЯрд┐ рдореМрдЬреВрдж рд╣реИ:

  • рд╕рдВрд╕реНрдХрд░рдг: рдЪрд╛рдВрджрд╛ 2.x.x ( 1.6.x рдореЗрдВ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛)
  • рдЪреМрдЦрдЯреЗ: рдЪрдореЗрд▓реА реи
  • рдмреНрд░рд╛рдЙрдЬрд╝рд░: рдХреНрд░реЛрдо рдФрд░ рдлреИрдВрдЯрдордЬреЗрдПрд╕
  • рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдУрдПрд╕рдПрдХреНрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬрд╝
  • рдХреЛрдгреАрдп/рдЕрдХреЛрдгреАрдп рдкреГрд╖реНрда: ???

рдЬреЛ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдХрд╛рдлреА рд╡реНрдпрд╛рдкрдХ рд╣реИ :(

@jessiahr @navarrojp @AndreasMaier рдЖрдк рдЗрд╕ рдмрдЧ рдХреЛ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ? рд╣рдо рд╕рдордиреНрд╡рдп рдХреЗ рд▓рд┐рдП рдЧрдЯрд░ рд░реВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд╣реА рдореБрджреНрджрд╛:

  • рд╕рдВрд╕реНрдХрд░рдг: рдЪрд╛рдВрджрд╛ 2.5.1
  • рдлреНрд░реЗрдорд╡рд░реНрдХ: рдЬреИрд╕реНрдореАрди 2
  • рдмреНрд░рд╛рдЙрдЬрд╝рд░: рдХреНрд░реЛрдо
  • рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдУрдПрд╕рдПрдХреНрд╕
  • рдХреЛрдгреАрдп рдкреГрд╖реНрда

@mrzmyr рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХреНрдпрд╛ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рдПрдХ рдЕрд▓рдЧ рдЙрджрд╛рд╣рд░рдг рдирдореВрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдЬрд╣рд╛рдВ рдЖрдк рдЗрд╕реЗ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@NickTomlin рдореБрдЭреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдпреБрдХреНрддрд┐ рдпрд╛ рдХреБрдЫ рднреА рд╕рдорд╛рди рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕реЗ рдЙрд╕реА рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ред рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╕рдордп рдХреЗ рдореБрджреНрджреЗ рдХреА рддрд░рд╣ рд▓рдЧ рд░рд╣рд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореЗрд░реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рддреИрдпрд╛рд░ рд╣реИ рдФрд░ рдпрд╣ рд▓рд╛рдЗрди рд╡рд╣рд╛рдВ рд╣реИред
browser.driver.get(targetUrl);

рдпрд╣ рддреНрд░реБрдЯрд┐ рд▓рдЧрднрдЧ 40% рд╕рдордп рдореЗрдВ рд╣реЛрддреА рд╣реИред рдЗрдбрд┐рдХ рдХреНрдпреЛрдВред

рдЪрдореЗрд▓реА 2.XX

рдореБрдЭреЗ @mrzmyr рдЬреИрд╕рд╛ рд╣реА рдореБрджреНрджрд╛ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ:

рд╕рдВрд╕реНрдХрд░рдг: рдЪрд╛рдВрджрд╛ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг
рдлреНрд░реЗрдорд╡рд░реНрдХ: рдЬреИрд╕реНрдореАрди 2
рдмреНрд░рд╛рдЙрдЬрд╝рд░: рдХреНрд░реЛрдо
рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдУрдПрд╕рдПрдХреНрд╕
рдХреЛрдгреАрдп рдкреГрд╖реНрда

рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП 1.8 рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдпрд╣ рдЕрдЬреАрдм рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкрд░реАрдХреНрд╖рдг рдХрд▓ рдЪрд▓ рд░рд╣реЗ рдереЗред

рдпрд╣рд╛рдВ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХрд╛ рдкрд╛рд▓рди тАЛтАЛрдХрд░рдХреЗ рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкрд░реАрдХреНрд╖рдг рдХреЗрд╕ рд╣реИред рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧ/рдЯреЗрд╕реНрдЯ рдХреЗрд╕ рдпрд╣рд╛рдВ рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рд╣реИред рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╕рдмрд╕реЗ рд╕рдЯреАрдХ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред

рдЪрд╛рдВрджрд╛@2.5.1
рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдо: рдУрдПрд╕рдПрдХреНрд╕
рдХреЛрдгреАрдп
рдлреНрд░реЗрдорд╡рд░реНрдХ: рдЬреИрд╕реНрдореАрди 2
рдмреНрд░рд╛рдЙрдЬрд╝рд░: рдХреНрд░реЛрдо

рдпрд╣ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдЖрдорддреМрд░ рдкрд░ рдЗрд╕рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдиреЗрд╡рд┐рдЧреЗрд╢рди browser.get рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред browser.get , URL рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЛрдгреАрдп рд▓реЛрдб рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдХреЛ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд░рддрд╛ рд╣реИред

@ 61ue5peed рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ browser.driver.get рд╕рдорд╛рди рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдФрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдкрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХреЗ рдХрд╛рд░рдг рдореЗрдВ рдореИрдВ рд╕рд┐рд░реНрдл browser.driver.get рд╕реЗ browser.get . рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реВрдВрдЧрд╛

@jennapederson рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ #becomeAwesome рдПрдХ рд▓рд┐рдВрдХ рд╣реИ, рдФрд░ рдЙрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЖрдк рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдФрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдкрд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЖрдкрдХреЗ рдЬреИрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмрд╕ рдПрдХ browser.refresh рдЬреЛрдбрд╝реВрдВрдЧрд╛ред

рдЕрдиреНрдп рд░рд┐рдкреЛрд░реНрдЯреЗрдВ рд╕рдорд╛рди рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдЕрдЧрд░ рд▓реЛрдЧ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ borwser.get рдкрд░ рдирд┐рд░реНрднрд░ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рд╡реЗ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВ

рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА v 3.3.1 рдореЗрдВ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИред
рдореИрдВ рдЕрдкрдиреЗ рд╣реЛрдордкреЗрдЬ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП browser.get рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдмрд╕ рдЖрдк рд╕рднреА рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреЗ рд▓рд┐рдП -> рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдПрдХ рдмрд╛рд╣рд░реА рдХреЛрдгреАрдп рдореЙрдбреНрдпреВрд▓ рдереА рдЬреЛ рдлреЗрд╕рдмреБрдХ рдПрдкреАрдЖрдИ рдХреЛ рд▓реЛрдб рдХрд░рддреА рд╣реИ .... рдлреЗрд╕рдмреБрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдХреЛрдгреАрдп рдРрдк рдХреЗ рднреАрддрд░ рдбреЛрдо рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдкрд░реАрдХреНрд╖рдг рдкрд░ рдлреЗрд╕рдмреБрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдореЙрдбреНрдпреВрд▓ рдмрджрд▓рдирд╛ рдкрдбрд╝рд╛

рдореБрдЭреЗ рдпрд╣ рдореБрджреНрджрд╛ рднреА рдорд┐рд▓рддрд╛ рд╣реИред рдЕрдХреНрд╕рд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рдХреЛрдгреАрдп рдкреГрд╖реНрда рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдмрд╛рд╣рд░реА рдпрд╛ рдЧреИрд░-рдХреЛрдгреАрдп рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдкрд░реАрдХреНрд╖рдг рдЧреБрдЬрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдпрд╣ рддреНрд░реБрдЯрд┐ рдкреЙрдк рдЕрдк рд╣реЛ рдЬрд╛рддреА рд╣реИ рдФрд░ рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдореЛрдбрд▓ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд▓рдВрдмрд╛ рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рд╣реА рдЪрд░рдг/рдкрд░реАрдХреНрд╖рдг рдкрд░ рд╣реЛрддрд╛ рд╣реИред

рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░: 3.2.2
рдХрдХрдбрд╝реА-рдЪрд╛рдЪрд╛: 0.4.0

@drcjones
рддрддреНрд╡ (by.css (рдЪрдпрдирдХрд░реНрддрд╛))ред isPresent ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдкрд░рд┐рдгрд╛рдо) {
рдЕрдЧрд░ (рдкрд░рд┐рдгрд╛рдо) {
рддрддреНрд╡ (by.css (рдЪрдпрдирдХрд░реНрддрд╛))ред рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ ();
}
}, 20000);

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

рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рд╢реАрд░реНрд╖рдХ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдХреНрдпрд╛ рдореБрдЭрд╕реЗ рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рд░рд╣реА рд╣реИ?

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

рдкреАрдкреА/: рдХреЛрдгреАрдп рдиреЗ рдХрднреА рднреА рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛рдмреВрдЯрд╕реНрдЯреНрд░реИрдк
рдвреЗрд░:
рддреНрд░реБрдЯрд┐: рдкреГрд╖реНрда рдкрд░ рдХреЛрдгреАрдп рдирд╣реАрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрд╛ http://thetestroom.com/jswebap
p/ : рдХреЛрдгреАрдп рдиреЗ рдХрднреА рднреА рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛рдмреВрдЯрд╕реНрдЯреНрд░реИрдк

`рдкрд╣рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ (рдлрд╝рдВрдХреНрд╢рди() {

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

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

рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЕрдЪреНрдЫреА рд╣реЛрдЧреАред

рдореИрдВ рдЖрдкрдХреЛ рд╢реАрд░реНрд╖рдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реБрдП рдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдпрд╛ рдХрд┐рд╕реА рддрддреНрд╡ рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ url рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рдирд╣реАрдВ рджреЗрдЦрддрд╛ред рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдорджрдж рдХрд░рддрд╛ рд╣реИред

browser.get(testUrl).then(function() {
рдмреНрд░рд╛рдЙрдЬрд╝рд░ред рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ (рдлрд╝рдВрдХреНрд╢рди () {
рд╡рд╛рдкрд╕реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ред getCurrentUrl ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдпреВрдЖрд░рдПрд▓) {
рд╡рд╛рдкрд╕реА /thetestroom/.test(url);
});
}, 10000);
});

рд╣рдордиреЗ IE9 рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд░реБрдХ-рд░реБрдХ рдХрд░ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред 3.2.1 рд╕реЗ 3.3.0 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдмрдВрдж рд╣реЛ рдЧрдИрдВред

рдпрд╣рд╛рдВ рд╡рд╣реА- 3.2.1 рд╕реЗ 3.3.0 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реИ

рдореБрдЭреЗ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рд╣реИред рдХреНрд░реЛрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рдХрдорд╛рд▓ рд╣реИред рдзрдиреНрдпрд╡рд╛рдж

config.js

рдПрдХреНрд╕рдкреЛрд░реНрдЯреНрд╕.рдХреЙрдиреНрдлрд┐рдЧ = {
рдбрд╛рдпрд░реЗрдХреНрдЯ рдХрдиреЗрдХреНрдЯ: рд╕рдЪ,
рдСрд▓рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕рдЯрд╛рдЗрдордЖрдЙрдЯ: 1000,

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

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

// рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрдЯрд░реНрди рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм
// рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
// рдЪрд╢реНрдорд╛: ['example_spec.js'],
рдЪрд╢реНрдорд╛: ['*_spec.js'],

рд╕реЗрд▓реЗрдирд┐рдпрдо рдкрддрд╛: ' http://localhost :8080/McacApp/index.html',
рдмреЗрд╕рдпреВрдЖрд░рдПрд▓: ' http://localhost :8080/McacApp/index.html',

// рдЪрд╛рдВрджрд╛-conf.js
рд░реВрдЯ рдПрд▓рд┐рдореЗрдВрдЯ: '.mcacApp',
// рдЬреИрд╕реНрдореАрди рдХреЛ рджрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рдХрд▓реНрдкред
рдЪрдореЗрд▓реА рдиреЛрдбрдСрдкреНрдЯреНрд╕: {
рдбрд┐рдлреЙрд▓реНрдЯрдЯрд╛рдЗрдордЖрдЙрдЯрдЗрдВрдЯрд░рд╡рд▓: рейрежрежрежреж,

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

}

};
example.spec.js

рд╡рд░реНрдгрди рдХрд░реЗрдВ ('рддреНрд╡рд░рд┐рдд рдкрд░реАрдХреНрд╖рдг', рдлрд╝рдВрдХреНрд╢рди() {

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 : рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдИрдореЗрд▓ рдФрд░ рд╕рдВрдкрд░реНрдХ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреНрд░реБрдЯрд┐: рд╡рд┐рдлрд▓: рдкреГрд╖реНрда рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рд╕рдордиреНрд╡рдпрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "[рдПрдирдЬреА: рдкрд░реАрдХреНрд╖рдг] http://errors.angularjs.org/1.4.7/ng/test "

рдзрдиреНрдпрд╡рд╛рдж рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреАред

@reddynr рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХрд┐ рдЖрдк .get() рдкреГрд╖реНрда рдХреЗ рдмрд╛рдж рдХрд┐рд╕реА рддрддреНрд╡ рдпрд╛ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВред рддреБрдореНрд╣реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдКрдкрд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ

рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
browser.get(..).then(function() { browser.driver.wait(browser.driver.isElementPresent(by.model('ctrl.formData.emailAddress'))); // all remaining sendKeys, submit and assert code here. });

@ srajagopalan1712 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд▓реЗрдХрд┐рди рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИред рдпрд╣рд╛рдБ рдореЗрд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж, рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА, рдЕрдЧрд░ рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рд╣реИред

рд╡рд░реНрдгрди рдХрд░реЗрдВ ('рдореИрдХрдХреИрдк', рдлрд╝рдВрдХреНрд╢рди() {
рдпрд╣ ('рдИрдореЗрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг', рдлрд╝рдВрдХреНрд╢рди ()
{
browser.get('http://localhost:8080/McacApp/index.html').then(function() {
рдмреНрд░рд╛рдЙрдЬрд╝рд░ред рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ (рдлрд╝рдВрдХреНрд╢рди () {
рд╡рд╛рдкрд╕реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ред getCurrentUrl ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдпреВрдЖрд░рдПрд▓) {
рд╡рд╛рдкрд╕реА /thetestroom/.test(url);
});
}, 10000);

});
рдПрд▓рд┐рдореЗрдВрдЯ (by.model ('ctrl.formData.emailAddress')).sendKeys ('[email protected]');
рд╡рд░ рдЧреНрд░реАрдЯрд┐рдВрдЧ = рддрддреНрд╡ (by.binding ('ctrl.formData.emailAddress'));
рдЙрдореНрдореАрдж (рдЧреНрд░реАрдЯрд┐рдВрдЧ.getText ()).toEqual('[email protected]');
});
});

url рдХреЗ рдмрджрд▓рдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдИрдореЗрд▓ рдкрддрд╛ рддрддреНрд╡ рдХреЗ рднреА рдЙрдкрд╕реНрдерд┐рдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ browser.driver.wait рдФрд░ browser.driver.getCurrentUrl рдЖрдЬрд╝рдорд╛рдПрдВред рдЕрдиреНрдп рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдХреЛрдб рдХреЛ get()...{} рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рднреА рд▓реЗ рдЬрд╛рдПрдВред

@ srajagopalan1712 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд▓реЗрдХрд┐рди рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдХрд╛рдордХрд╛рдЬреА рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред

рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдКрдкрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдореЗрдВ return /thetestroom/.test(url); рд╣реИред рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдЬреЛ рдореИрдВрдиреЗ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЙрдирдХреЗ рдпреВрдЖрд░рдПрд▓ рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдерд╛ред рдХреГрдкрдпрд╛ 'thetestroom' рдХреЛ рдпрд╣рд╛рдВ рд╕реЗ рдмрджрд▓ рджреЗрдВ, рдЬреЛ рдЖрдкрдХрд╛ url рдЬреИрд╕рд╛ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдореБрджреНрджреЗ рдХреЗ рдмрдЬрд╛рдп рдпрд╣рд╛рдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред
рдпрд╣рд╛рдБ рдХреЛрдб рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ

 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('.....');  
  });

@ рд╢рд╛рд░рджрд╛,

рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рджреЛред

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

рен рдЕрдХреНрдЯреВрдмрд░ реирежрезрем рдХреЛ резрел:релреи рдмрдЬреЗ, рд╕рд╛рд░рджрд╛ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рдКрдкрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ /thetestroom/.test(url); рдХреЛрдб рдореЗрдВ
рдКрдкрд░ред рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ url рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдерд╛ a
рдкреБрд░рд╛рдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ред рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ 'рдж рдЯреЗрд╕реНрдЯрд░реВрдо' рдХреЛ рдЕрдкрдиреЗ рдпреВрдЖрд░рдПрд▓ рдореЗрдВ рдмрджрд▓ рджреЗрдВ
рд╣рдорд╢рдХреНрд▓ред рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдХреЗ рдмрдЬрд╛рдп рдпрд╣рд╛рдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛
рдореБрджреНрджрд╛ред
рдпрд╣рд╛рдБ рдХреЛрдб рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ

Homepage.myButton.click().then(function() {
рдмреНрд░рд╛рдЙрдЬрд╝рд░.рдбреНрд░рд╛рдЗрд╡рд░.рд╡реЗрдЯ (рдлрд╝рдВрдХреНрд╢рди () {
рд╡рд╛рдкрд╕реА browser.driver.getCurrentUrl ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдпреВрдЖрд░рдПрд▓) {
рд╡рд╛рдкрд╕реА url.рд╢рд╛рдорд┐рд▓ ('......'); // рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдирдП url рдореЗрдВ рд╡рд╣ рд╣реИ рдЬреЛ рдЖрдк рдЦреЛрдЬ рд░рд╣реЗ рд╣реИрдВ ...
}); // рдпрд╣ рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдпреВрдЖрд░рдПрд▓ рдЬреЛ рдХреБрдЫ рднреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЙрд╕рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ ....
}, 25000, "рдпреВрдЖрд░рдПрд▓ рдирд╣реАрдВ рдмрджрд▓рд╛")ред рддрдм (рдлрд╝рдВрдХреНрд╢рди() {
// рдпреВрдЖрд░рдПрд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдирдП рдкреЗрдЬ рдореЗрдВ рдЗрдиреНрд╣реЗрдВ рдЬрд╛рдВрдЪреЗрдВ
// рдкреАрдИрд╕реА рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕реНрдерд┐рддрд┐ рд╣реИред
// рджреЗрдЦреЗрдВ http://www.protractortest.org/#/api ?view=ProtractorExpectedConditions
рдмреНрд░рд╛рдЙрдЬрд░.рд╡реЗрдЯ (рдкреАрдИрд╕реА.рд╡рд┐рдЬрд┐рдмрд┐рд▓рд┐рдЯреАрдСрдл (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯ), 20000);
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯрд▓.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдмреЙрдбреА.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
});

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

@рд╢рд╛рд░рджрд╛ ,

рдлреАрдбрдмреИрдХ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

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

рдЪрд▓ рд░рд╣рд╛ рд╣реИ: npm рд░рди рджреЗрд╡

рддреНрд░реБрдЯрд┐: рдореЙрдбреНрдпреВрд▓ './internal/streams/BufferList' рдирд╣реАрдВ рдЦреЛрдЬрд╛ рдЬрд╛ рд╕рдХрд╛

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

17 рдЕрдХреНрдЯреВрдмрд░ 2016 рдХреЛ 16:48 рдмрдЬреЗ рдирд░реЗрдВрджреНрд░ рд░реЗрдбреНрдбреА рдирд░реЗрдВрджреНрд░ред [email protected] рдиреЗ рд▓рд┐рдЦрд╛:

@ рд╢рд╛рд░рджрд╛,

рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рджреЛред

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

рен рдЕрдХреНрдЯреВрдмрд░ реирежрезрем рдХреЛ резрел:релреи рдмрдЬреЗ, рд╕рд╛рд░рджрд╛ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рдКрдкрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ /thetestroom/.test(url); рдХреЛрдб рдореЗрдВ
рдКрдкрд░ред рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ url рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдерд╛ a
рдкреБрд░рд╛рдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ред рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ 'рдж рдЯреЗрд╕реНрдЯрд░реВрдо' рдХреЛ рдЕрдкрдиреЗ рдпреВрдЖрд░рдПрд▓ рдореЗрдВ рдмрджрд▓ рджреЗрдВ
рд╣рдорд╢рдХреНрд▓ред рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдХреЗ рдмрдЬрд╛рдп рдпрд╣рд╛рдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛
рдореБрджреНрджрд╛ред
рдпрд╣рд╛рдБ рдХреЛрдб рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ

Homepage.myButton.click().then(function() {
рдмреНрд░рд╛рдЙрдЬрд╝рд░.рдбреНрд░рд╛рдЗрд╡рд░.рд╡реЗрдЯ (рдлрд╝рдВрдХреНрд╢рди () {
рд╡рд╛рдкрд╕реА browser.driver.getCurrentUrl ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдпреВрдЖрд░рдПрд▓) {
рд╡рд╛рдкрд╕реА url.рд╢рд╛рдорд┐рд▓ ('......'); // рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдирдП url рдореЗрдВ рд╡рд╣ рд╣реИ рдЬреЛ рдЖрдк рдЦреЛрдЬ рд░рд╣реЗ рд╣реИрдВ ...
}); // рдпрд╣ рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдпреВрдЖрд░рдПрд▓ рдЬреЛ рдХреБрдЫ рднреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЙрд╕рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ ....
}, 25000, "рдпреВрдЖрд░рдПрд▓ рдирд╣реАрдВ рдмрджрд▓рд╛")ред рддрдм (рдлрд╝рдВрдХреНрд╢рди() {
// рдпреВрдЖрд░рдПрд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдирдП рдкреЗрдЬ рдореЗрдВ рдЗрдиреНрд╣реЗрдВ рдЬрд╛рдВрдЪреЗрдВ
// рдкреАрдИрд╕реА рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕реНрдерд┐рддрд┐ рд╣реИред
// рджреЗрдЦреЗрдВ http://www.protractortest.org/#/api ?view=ProtractorExpectedConditions
рдмреНрд░рд╛рдЙрдЬрд░.рд╡реЗрдЯ (рдкреАрдИрд╕реА.рд╡рд┐рдЬрд┐рдмрд┐рд▓рд┐рдЯреАрдСрдл (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯ), 20000);
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯрд▓.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдмреЙрдбреА.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
});

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

рдЖрдкрдХреЗ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдХреБрдЫред рдХреЛрдгреАрдп/рдЪрд╛рдЪрд╛ рддреНрд░реБрдЯрд┐ рдХреА рддрд░рд╣ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ
рдореБрдЭреЗ рдорд╛рд▓реВрдо рд╣реИред

рдореЗрд░реЗ рдЖрдИрдлреЛрди рд╕реЗ рднреЗрдЬрд╛ рдЧрдпрд╛

рдЕрдХреНрдЯреВ 19, 2016 рдореЗрдВ 7:54 рдмрдЬреЗ рдкрд░, рдирд░реЗрдВрджреНрд░ [email protected] рд▓рд┐рдЦрд╛ рд╣реИ:

@рд╢рд╛рд░рджрд╛ ,

рдлреАрдбрдмреИрдХ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

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

рдЪрд▓ рд░рд╣рд╛ рд╣реИ: npm рд░рди рджреЗрд╡

рддреНрд░реБрдЯрд┐: рдореЙрдбреНрдпреВрд▓ './internal/streams/BufferList' рдирд╣реАрдВ рдЦреЛрдЬрд╛ рдЬрд╛ рд╕рдХрд╛

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

17 рдЕрдХреНрдЯреВрдмрд░ 2016 рдХреЛ 16:48 рдмрдЬреЗ рдирд░реЗрдВрджреНрд░ рд░реЗрдбреНрдбреА рдирд░реЗрдВрджреНрд░ред [email protected] рдиреЗ рд▓рд┐рдЦрд╛:

@ рд╢рд╛рд░рджрд╛,

рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рджреЛред

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

рен рдЕрдХреНрдЯреВрдмрд░ реирежрезрем рдХреЛ резрел:релреи рдмрдЬреЗ, рд╕рд╛рд░рджрд╛ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рдКрдкрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ /thetestroom/.test(url); рдХреЛрдб рдореЗрдВ
рдКрдкрд░ред рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ url рдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдерд╛ a
рдкреБрд░рд╛рдиреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ред рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ 'thetestroom' рдХреЛ рдЕрдкрдиреЗ url рдореЗрдВ рдмрджрд▓реЗрдВ
рдорд░реНрдЬреА
рд╣рдорд╢рдХреНрд▓ред рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдХреЗ рдмрдЬрд╛рдп рдпрд╣рд╛рдВ рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛
рдореБрджреНрджрд╛ред
рдпрд╣рд╛рдБ рдХреЛрдб рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ

Homepage.myButton.click().then(function() {
рдмреНрд░рд╛рдЙрдЬрд╝рд░.рдбреНрд░рд╛рдЗрд╡рд░.рд╡реЗрдЯ (рдлрд╝рдВрдХреНрд╢рди () {
рд╡рд╛рдкрд╕реА browser.driver.getCurrentUrl ()ред рддрдм (рдлрд╝рдВрдХреНрд╢рди (рдпреВрдЖрд░рдПрд▓) {
рд╡рд╛рдкрд╕реА url.рд╢рд╛рдорд┐рд▓ ('......'); // рдЬрд╛рдБрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдирдП url рдореЗрдВ рд╡рд╣ рд╣реИ рдЬреЛ рдЖрдк рд╣реИрдВ
рдореЗрдВ рдвреВрдВрдв рд░рд╣рд╛ рд╣реВрдБ...
}); // рдпрд╣ рддрдм рддрдХ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдпреВрдЖрд░рдПрд▓ рдЬреЛ рдХреБрдЫ рднреА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЙрд╕рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ ....
}, 25000, "рдпреВрдЖрд░рдПрд▓ рдирд╣реАрдВ рдмрджрд▓рд╛")ред рддрдм (рдлрд╝рдВрдХреНрд╢рди() {
// рдпреВрдЖрд░рдПрд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдирдП рдкреЗрдЬ рдореЗрдВ рдЗрдиреНрд╣реЗрдВ рдЬрд╛рдВрдЪреЗрдВ
// рдкреАрдИрд╕реА рдкреНрд░реЛрдЯреНрд░реИрдХреНрдЯрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕реНрдерд┐рддрд┐ рд╣реИред
// рджреЗрдЦреЛ
http://www.protractortest.org/#/api ?view=ProtractorExpectedConditions
рдмреНрд░рд╛рдЙрдЬрд░.рд╡реЗрдЯ (рдкреАрдИрд╕реА.рд╡рд┐рдЬрд┐рдмрд┐рд▓рд┐рдЯреАрдСрдл (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯ), 20000);
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдЯрд╛рдЗрдЯрд▓.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
рдЙрдореНрдореАрдж (рд╣реЛрдордкреЗрдЬ.рдлреАрдбрдмреЙрдбреА.рдЧреЗрдЯрдЯреЗрдХреНрд╕реНрдЯ ()).toContain('.....');
});

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

.

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

рд╣рд╛рдп рд╕рд░рд╛рдЬрдЧреЛрдкрд╛рд▓рди резренрезреи,

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

рддреНрд░реБрдЯрд┐:

goog.global.setTimeout (рдлрд╝рдВрдХреНрд╢рди () {рдлреЗрдВрдХ рдЕрдкрд╡рд╛рдж;}, 0);
^
рдкреНрд░реЛрдЯреИрдХреНрдЯрд░ рдХреЗ рдкреЗрдЬ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐: "[рдПрдирдЬреА: рдЯреЗрд╕реНрдЯ] http://errors.angularjs.org/1.4.7/ng/test "

рдпрд╣рд╛рдБ рдореЗрд░рд╛ рдХреЛрдб рд╣реИ

рд╡рд░реНрдгрди рдХрд░реЗрдВ ('рдореЗрд░рд╛ рдРрдк рдкрд░реАрдХреНрд╖рдг', рдлрд╝рдВрдХреНрд╢рди() {

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

рдЖрдк рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж,

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

рдореИрдВ рдХреЛрдгреАрдп 5 рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдмрддрд╛ рд░рд╣рд╛ рд╣реЛ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рдпрджрд┐ рдЖрдк рдбрд┐рдмрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдЕрдкрдиреЗ e2e рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрд▓рдЧ рд╕реЗ "рдПрдирдЬреА рд╕рд░реНрд╡" рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╡рд╣ рдЪрд░реНрдЪрд╛ рд╣реИ рдЬрд╣рд╛рдБ рдореБрдЭреЗ рдЙрддреНрддрд░ рдорд┐рд▓рд╛:
https://github.com/angular/angular-cli/issues/4183

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ!

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

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

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

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

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

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

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