-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't debug E2E tests using node 8.10 #676
Comments
I put it to next release - not realy relevant for this release |
One reason we want to update to node 8.x is that in node 6.x the package-lock.json file is not written yet. Just discussed it with @bruderol and we decided to upgrade to node 8.11.1 LTS. This means we will disable the Control Flow and start using async / await for making debugging possible. See: |
Thanks for the links - I think the removal of the control flow is bad - While I like the new possibilities of await of course, I think the new way of writing protractor tests with awaits is very very VERY error prone!!! because: if you forget one await it will not be guaranteed in what order the commands are executed and you will get unstable tests. this situation is unacceptable to me and we will have to find a way how we can mitigate that problem or whether we should maybe just use a real synchronous test api then - because: what is all this asynch API worth anyway if we then have to write an await before each API call, that is just bad!!! I am disappointed of protractor they do not provide a better answer to that, as far as I can see - or did I miss something??? |
@bruderol The removal of the control flow is done in selenium-js and protractor just has to follow (see SeleniumHQ/selenium#2969). The control flow always was kind of a hack in my opinion as it made code look synchronous while in reality it was asynchronous. I much prefer a solution with regular promises that make the asynchronity visible. The problem with missing awaits can be mitigated by enabling the Of course, a real synchronous API would be even better. http://webdriver.io/ promises that. I once did a small PoC with it and it actually seems to behave synchronously. Switching the test framework would be quite some work though. |
I wouldnt call it a hack. Just becasue something has some asynch complexity it does not necessarily mean it is a hack. Now without the guarantee of order anymore- I think it has become even more hacky. |
…rioo This is currently still necessary because scenarioo-js uses the controlFlow to save steps. Disabling the promise manager results in warning log messages and missing step XMLs.
@adiherzog Is this still an issue or can we close?? |
I just updated the documentation and will close the issue. |
…ntrol-flow scenarioo/scenarioo#676 Remove control flow
When using the
browser.pause()
statement to debug a protractor test using node 8.10, I get this error:The reason for this is that protractor does not support this kind of debugging anymore in node 8.x. See also: angular/protractor#4307
On the build server we still have node 6.11.5, so it's not a problem there.
I will locally downgrade node to the same version for now, but we should soon upgrade to the latest LTS version (8.x).
Acceptance Criteria:
The text was updated successfully, but these errors were encountered: