CodeceptJS
CodeceptJS copied to clipboard
Make stepping with debugger possible - resolve steps immediately
What are you trying to achieve?
Stepping using debugger while watching test execution in browser.
What do you get instead?
I get a bunch of promises that evaluate immediately, meaning the browser does nothing until I hit pause() or the test completes, then the commands start to execute.
/// <reference path="../steps.d.ts" />
Feature('Checking debug');
Scenario('test something', (I) => {
I.amOnPage("/");
I.see("CRM Online");
pause(); // or a breakpoint
I.see("Log in with your registered account");
I.click("Next");
// step to here, and browser is still not doing anything.
});
Details
- CodeceptJS version: 1.3.0
- NodeJS Version: 8.11.3
- Operating System: win10 64bit
That's why we have pause()
🤗
If you want TRUE step-by-step execution just put it into async
function and add await
for each operator.
But basically you don't need to do the heavy debugging unless you are fixing something in CodeceptJS core... For everything else you have pause()
Some people just want to single step. I'll see if the await-everything solution satisfies them.
I'm planning to improve pause()
to provide step-by-step debugging experience.
But not sure when
I am looking for some help doing the same thing in vs code, stepping through my codeceptjs async scenario one line at a time without adding await before each line. The same thing is happening to me as the first comment, when I step over a console log, it prints to the console. But any other step does not execute until the end of the scenario unless I add the await command before it. I see the last entry here is from 2018, has anything changed to make this possible?