You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Back when the UI tests started the web app in a separate process, it was possible to just drop a breakpoint in your code and do stuff in the browser window interactively, because the program was still running. So you could still look around on other pages, inspect the current state of the admin dashboard, etc. It was only needed occasionally but then it was incredibly useful in debugging problems that crop up during UI tests.
Right now this is not possible. Currently the only hack where I can approximate this effect is by adding something like await Task.Delay(120000); before the line where I'd like to "break", and then I have 2 minutes to look around in another tab but that's super inconvenient.
I'd like to have the ability to switch into an interactive mode programmatically, similar to how you can switch into debug mode with Debugger.Break(). I envision a separate module that stores a mode state and exposes an MVC action for a UI to leave interactive mode and continue operation. This module would be added to the webapp just like the Shortcuts module now. And an await context.SwitchToInteractiveAsync() extension method that updates the mode, opens this action in a new tab and then waits until the state is restored, e.g. via task cancellation.
We don't really need a separate module for this, it can be part of Shortcuts.
Having a new tab open with a button like "Exit interactive mode" would be beautiful, though I think even having a URL that you open that quits interactive mode would be sufficient.
I'm doing both. Visually it will open the tab like
but you can also directly navigate to ~/Lombiq.Tests.UI.Shortcuts/InteractiveMode/Continue to get the same effect.
An updated copy of my original post on Teams:
Back when the UI tests started the web app in a separate process, it was possible to just drop a breakpoint in your code and do stuff in the browser window interactively, because the program was still running. So you could still look around on other pages, inspect the current state of the admin dashboard, etc. It was only needed occasionally but then it was incredibly useful in debugging problems that crop up during UI tests.
Right now this is not possible. Currently the only hack where I can approximate this effect is by adding something like await
Task.Delay(120000);
before the line where I'd like to "break", and then I have 2 minutes to look around in another tab but that's super inconvenient.I'd like to have the ability to switch into an interactive mode programmatically, similar to how you can switch into debug mode with
Debugger.Break()
. I envision a separate module that stores a mode state and exposes an MVC action for a UI to leave interactive mode and continue operation. This module would be added to the webapp just like the Shortcuts module now. And anawait context.SwitchToInteractiveAsync()
extension method that updates the mode, opens this action in a new tab and then waits until the state is restored, e.g. via task cancellation.Jira issue
The text was updated successfully, but these errors were encountered: