This is a little thing that annoys me. When I run a test case, output console is flooded by messages (especially when testing Spring beans). When test finishes, I see the red bar appearing, I see that there is a stacktrace somewhere down, but the output is immediately moved to the top.
I know that there is a 'Scroll to the end' button, but I have to click it. I want the end of a test output to be displayed automatically.
I'm using IntelliJ CE, 2018.3.2
I'm attaching a screenshot that shows my console after executing a failing test. Despite a 'Scroll to the end' button is enabled, output is "rewind" to top.
Ok, I found some kind of solution. In the test run tab, there is an icon for test settings. In there there is an option 'Track running test'. I noticed that when I change this setting, my console output stays at the botton and it's not being rewind. You can see that on a screenshot below.
I'm not sure if this is IntelliJ's feature or a bug, but maybe someone will find this post useful.
For me (in webstorm 2020) the solution was to click the cog wheel, then select Scroll to Stack Trace. I'm sure in all the Jetbrains products this is the solution.
Related
I hope I can explain my specific annoyance clearly enough:
Quite some time ago, IntelliJ introduced a feature in the run console to parse the content of the output and would try to print a nice tree structure on the left. However, its default behavior of jumping to the error was very annoying. To illustrate my point:
When it starts normally, the full console output is available in the right panel. However, when things happen, or, in my case of gradle run, when I simply stop it, IntelliJ would jump to the specific block of output only with the error:
Note, in the second screenshot, that there is no scroll bar on the right side of the right panel, and thus I cannot scroll up to view the actual run logs. I have to click the left panel's top element in the tree to be able to view all logs.
The locking to a specific block of output is nice to have, but I am happy without it too, as before it was introduced. But the default jumping to that block is annoying and irritating. Almost in all cases I started and ended a run like this, I have to click the left panel to view the whole log -- this "Build cancelled" error block is of no use at all. And when it's jumping to an actual exception, majority of the time I'd need to look around its context for the cause, which requires me to re-orient myself in the log flow where the block was at. This is very counter productive for me.
I have been assuming IntelliJ should provide an option to either not jump to the error by default (leaving the full log available in the right panel), or to disable the whole console output parsing as a whole.
I have not been able to locate a setting for either of this. Does anyone know if that's possible?
We are working to fix that. Please vote and follow https://youtrack.jetbrains.com/issue/IDEA-241844
I use TDD quite a lot, and I was wondering if there is a way to show the Run Tool window only when there are failed tests?
Or to be more generic, for any run configuration, I would like the Run Tool window to be shown only when something goes wrong. Otherwise I would prefer the little non-obtrusive green pop-up to appear. Like when you run a lot of tests and you minimize the Run Tool by clicking on the "down arrow" in its top-right corner. When the tests are done, a little green pop-up appears over the minimized window.
I would also compromise for an answer that tells me how to keep the Run Tool always minimized, and only see little pop-ups, regardless if they are green or red.
This is probably not exactly the answer you wanted but if you look in the RunConfiguration (Run->Edit Configurations -> JUnit) for your test run you should see a checkbox called 'Activate tool window'. If that box is ticked then the Run Tool window will pop open even if its minimised. When it's not ticked then the Run Tool window will stay minimised.
So, for any individual existing test run you can change the check box value to prevent the tool window appearing. If you're doing TDD that could mean you have many configurations for specific test cases / suites etc, which you would need to change individually.
In the longer term, you probably want to avoid future run configurations popping up the test. You can do that through the Defaults -> JUnit section in the RunConfigurations window.
Also, in the tab "Logs" you can check the option "Show console when a message is printed to standard error stream"
When this option is checked the window is opened automatically if some test fails.
This will probably sound like a minor issue, but it's completely messing up my workflow:
I have a microservice that I restart frequently to refresh changes. I start in Debug mode, and use the curvy arrow in the upper left of the Debug tool window to stop/start the process.
In the Debug window, there are 2 tabs, Debugger and Console. For weeks, I've kept this on Console, and I can see the service run through startup, and I know when to start hitting endpoints. All of a sudden, whenever I start up, it switches to the Debugger tab, which means I have to manually switch back.
No documentation on this, and didn't find anything with a Google search. Does anyone have something to try?
Thank you
Update:
I start with the focus on Console (the right tab) and it switches to Debugger (the left tab). There is a "Focus on startup" in the context menu for Console, but it has no effect.
I'm not sure this is exactly what you're looking for. If it's not, could you please add some screenshots to the question which might better illustrate the problem? But if it is, here is what I found:
In the Debug tool window you have tabs like Output and Variables, which are probably the tabs you are talking about. You can right click any of these tabs and select Focus On Startup. You probably have this option selected for the wrong tab. So try selecting it for the Output tab.
You can toggle the Focus On Startup behavior for other tabs in the Debug tool window too.
Just like this question here:
IntelliJ: After hiding my "Output" sub-panel within the "Debug" panel, how do I get it back?
I canno get the log/console viewer back in debug mode.
The suggested solution in the given question no longer works the "restore layout" button does nothing, and the "certain spot" on the debug is extremely vague at best.
Is there a way to retrieve the console if it gets vanished (or better yet, just stop that button for vanishing it from even existing)?
I am using IntelliJ 12 Ultimate. If the restore layout didn't work for you either, this should fix the problem:
Open the Debug panel.
Keep mouse on the Debug tab and move it straight right to the Watches icon.
You may see a few more more icons here, and Output may or may not be visible (not visible for me)
If visible, click it and the Output view will be restored.
If not visible, move your mouse slowly to either side of the Watches icon and an empty block would highlight indicating that you are hovering over an icon. There may be several of these. Use tooltip to figure out which is Ouput and click it.
Worked for me, I hope it works for you too.
click the button on the left of Debug View called "restore layout",then the console will go back in the Debug View! 1
Syed explained it pretty well, but a picture could be even better:
A view can be hidden via its context menu, then restored by clicking the corresponding icon (with red circle) to the right.
You can restore the layout using this button as of 2018.1.8
In 2016.2, I had to re-run in debug mode for it to reappear. I could not find a way to un-hide the console in the debug window.
You don't say which version of IntelliJ you're using, but I've just tried this in version 12 and the console window minimises to the far right of the debugger tabs. Look at where it says 'Debugger' and then eyes right until you see one or more icons over the Watches panel. Try clicking on them. If you're not using version 12, then only god can help you :)
In v. 2020.1 there is Layout Settings on the top right corner of Debug window
I've just spent an hour trying to get my console output back, and although this answer didn't solve it, it did help.
I'm on Intellij 11.1 Ultimate Edition, and Restore layout didn't help. Nor did I have any icons above the Watches window in the debugger, but I clicked around above the Watches anyway - and suddenly my console output was restored.
I've tried clicking around there again to see if I can provide more concrete steps, but without success. Can only suggest you keep clicking till it reappears.
I am writing tests for a web application and all went well until I had to choose an option from a menu and that option displays a drop down list when hovered or clicked. When I click an option from the drop down list, I get the following error:
MoveTargetOutOfBoundsException: Element cannot be scrolled into view
Does anyone know what this error is about and what I should look for in my code?
Selenium version 2.25.0, java version 1.6.0_31
I've been checking some selenium and google groups regarding this issue in older versions https://groups.google.com/forum/?fromgroups=#!topic/selenium-users/EuZ7a6_lB9Q
http://code.google.com/p/selenium/issues/detail?id=3075
http://code.google.com/p/selenium/issues/detail?id=4102
a more recent discussion
Is it a known issue for Selenium 2.25.0 or is there a way to fix it? I recently upgraded to Firefox 15.0 :|
Note: I found a temporary solution until someone magically fixes this...since I can't find where the problem is...
I run the code before that point where it crashes, I put it to sleep for 10 seconds, I manually click the menu and the option from the drop down list, the window I want is displayed and the code continues with actions from that point. It works for now...I hope this will be fixed since I can't believe that I can run a script in Selenium IDE but I can't run my java code in WebDriver ...this is crazy :|
I guess you are trying to click an element from a dropdown.
You should keep in mind, that Selenium helps you replicate exact human behavior. So if the code fails because the element is not visible, it is probably because the element is not visible.
To make it work, you might want to put a click command on the menu before the failing bit of code.
(to replicate the sleep 10 seconds manually click the menu button method you are using)
Once again, if you can show us your code and also the HTML snippet of the Menu section, we can provide an exact solution.
Maybe you're opening new popup window while opening select box.
This may help you:
WebDriver.FindElement(By.Id("someInputBox")).SendKeys("hello");
(IJavaScriptExecutor)WebDriver).ExecuteScript("document.getElementById('windowOpener_Button').click();");
WebDriver.SwitchTo().Window("newDisplayedWindowPopupName"); // continue to test