Daily Usage Issues

NCrunch Tests-window issues in Rider

Started by Fresa on 3,182 views

The NCrunch test window breaks often in multiple ways in Rider.
- It stops responding to Windows "snap windows"-functionality
- Trace Output vertical scrollbar vanishes
- Trace output can still be scrolled with page down/up keys, but output is missing/truncated at the bottom

RDI window overlay almost never works, nothing happens when clicking the RDI overlay symbols or "Open RDI overlay to show values for this scope" in the right click context menu, and when it works the overlay window some times starts moving when scrolling or showing up at the wrong place in the IDE, and becomes non-interactable.

Never seen this issues in Visual Studio.

Only solution I've found is to restart Rider. Does not solve the issues with RDI overlay though.

I use NVIDIA surround with multiple monitors, not sure if that has anything to do with the issues, but I think it almost always happens when turning all monitors off an then on again.

I don't know how to trouble shoot any of this, or how I can provide more information?

I have no problems with any other Rider windows or plugins.

JetBrains Rider 2025.1.2
Build #RD-251.25410.119, built on May 7, 2025

NCrunch for Jetbrains Rider 5.15.0.4

Windows 11 24H2, OS Build 26100.4202
Hi, thanks for sharing these issues. I'll try to address them individually.

Fresa wrote:The NCrunch test window breaks often in multiple ways in Rider.
- It stops responding to Windows "snap windows"-functionality


The Tests Window is mounted into Rider using a system called Wormhole, which is a JB component they are using internally for ReSharper. It work basically by streaming UI functions through a shared memory pipe, and is still under development.

Unfortunately the actual mounting of the window into the IDE and the tech that pulls it through the pipe is not under NCrunch control. This means that we don't have a way to solve issues related to the snapping of tool windows. It's my hope that issues like this will be solved by JB over time as they continue to work on Wormhole.


- Trace Output vertical scrollbar vanishes
- Trace output can still be scrolled with page down/up keys, but output is missing/truncated at the bottom


Are these issues related to the snapping of the window? I haven't seen them before and I'm wondering if you have a consistent way to reproduce them. There might be more I can do about them.


RDI window overlay almost never works, nothing happens when clicking the RDI overlay symbols or "Open RDI overlay to show values for this scope" in the right click context menu, and when it works the overlay window some times starts moving when scrolling or showing up at the wrong place in the IDE, and becomes non-interactable.


Right now RDI under Rider suffers from a range of issues that are interfering with the engine being able to pipe data into the UI. The good news is that I'm suffering with these problems too, and I've been working to fix them as I discover them. I have a number of fixes for this already pending in v5.16 and will push them when I've had a bit more time to test them myself.

RDI support was the last feature added to Rider in the 3-4 year development cycle, so it makes sense that it will have the most issues, since we had less time to dogfood and stabilise this area. Because it's also relying on piping the whole UI through shared memory, it's never going to be as responsive as what we have in VS ... but it IS supposed to work.


Never seen this issues in Visual Studio.


NCrunch's VS package has the benefit of 16 years of development, testing, Q&A, dogfooding, and all of that. We've only had support for Rider for a little over a year, and it's still in beta. Rider is much more challenging to support because the native IDE is JVM based, so we don't have an easy way to share code between the engine and the IDE.

I don't expect that it will be possible to get Rider's plugin as fast or as reliable as the VS one, but we're more or less at parity in terms of features... now it's just getting the stability worked out.

Are these issues related to the snapping of the window? I haven't seen them before and I'm wondering if you have a consistent way to reproduce them. There might be more I can do about them.


It seems to happen when ever I turn the displays on an off, I haven't observed any other scenario when this happens.

Don't think it's related to snapping of the window, I just realized that seems to not work for any floating plugin windows, only floating code windows (which seems to be an actual window in Windows as it shows up in the taskbar) which might explain why snapping doesn't work and is actually a Rider-problem. Could it perhaps be possible to render in a similar window as the floating code windows?

Another, perhaps related, issue I just remembered is that the test window's trace output pane (and all other related panes) are sometimes gone when turning the displays on again. It can be found again if toggling "Split Tests Windows vertically" (so they are horizontally) and then drag the window across all screens until it appears, and then readjust it's position and toggle it vertically again. It seems to render outside the window's boundaries.

Lines in the Trace Output window is also not wrapping when any of this occurs, it goes out of boundaries to the right.
I've had a go at reproducing this on my own machine (I use NVIDIA Surround too), but it doesn't seem to happen on my end. Probably there is an environment component to the problem. You've mentioned that this seems to affect other non-NCrunch tool windows in Rider too? Do the effects seem to be similar?

If you resize the tool window, or close and reopen it, does it fix the problem? In theory this should trigger a refresh.

Unfortunately rendering our tool window in the same manner as a code window isn't an available option, as this won't enable the wormhole functionality we need to pipe the UI between processes.

My options in solving these issues are quite limited. My best hope is that if I can identify when the issues appear, I can force the system to just do a full refresh of the window to try and clear it.
Would you be interested in trying the build below? This has some fixes for the RDI overlay under Rider. I'm hoping it will work a bit better for you. Note that there are no fixes for the Tests Window in this build:

NCrunch_Console_5.16.0.2.msi
NCrunch_Console_5.16.0.2.zip
NCrunch_GridNodeServer_5.16.0.2.msi
NCrunch_GridNodeServer_5.16.0.2.zip
NCrunch_LicenseServer_5.16.0.2.zip
NCrunch_Rider_5.16.0.2.7z
NCrunch_Rider_5.16.0.2.zip
NCrunch_VS2010_5.16.0.2.msi
NCrunch_VS2010_5.16.0.2.zip
NCrunch_VS2012_5.16.0.2.msi
NCrunch_VS2012_5.16.0.2.zip
NCrunch_VS2013_5.16.0.2.msi
NCrunch_VS2013_5.16.0.2.zip
NCrunch_VS2015_5.16.0.2.msi
NCrunch_VS2015_5.16.0.2.msi.7z
NCrunch_VS2015_5.16.0.2.zip
NCrunch_VS2017_5.16.0.2.msi
NCrunch_VS2017_5.16.0.2.msi.7z
NCrunch_VS2017_5.16.0.2.zip
NCrunch_VS2019_5.16.0.2.msi
NCrunch_VS2019_5.16.0.2.msi.7z
NCrunch_VS2019_5.16.0.2.zip
NCrunch_VS2022_5.16.0.2.msi
NCrunch_VS2022_5.16.0.2.msi.7z
NCrunch_VS2022_5.16.0.2.zip
It does not seem to affect any other windows.

Resizing, closing and opening does not solve the problem, only restarting Rider.

I installed 5.16.0.2 today, and the same issues occurred after having the screens turned off for a while, and then turning them on again. RDI overlay seems to never work when this occurs. I'll keep an eye out for miss-aligned RDI overlays, I haven't seen that today.

Another observation that may or may not be related. I have three screens, and sometimes after turning them off and turning them on, some windows sometimes changed size, specifically if I left them in full screen mode (on one screen). I'm gonna experiment a bit with that, see if these issues occur if I don't leave any Rider windows in full screen mode.
Fullscreen window or not, it didn't change the behavior. Here's a screenshot, so you know I'm not making it up ;)

External image

Notice the missing vertical scrollbar (it's a screenshot of the whole NCrunch Tests window). Also note the location of the risk progress bar, it's supposed to be docked in the lower part of Rider. It moves back into position as soon as I resize Rider, so that's no problem.
Also when ever minimizing any of the NCrunch windows, it briefly moves to the upper left corner of the surround display (my left screen), only for a fraction of a second, but enough to notice, before it is gone.
Thanks for these extra details and for the screenshot.

From what you've described, I think something is going wrong in the sizing inside the JB wormhole system when the O/S adjusts the display. Unfortunately, all of this is outside the range of what we are able to fix in NCrunch. If resizing the window fixed the problem, this would give me an angle I could use to force the window to reset (which is what happens when it's resized), but as this doesn't work, I'm doubtful I could find a solution to this problem without pulling Rider/Intellij to pieces.

The fix included in the build above isn't targeted to the display issue you've encountered - it solves some problems that are specific to RDI not being able to pipe data from the engine. I'm not sure if you've encountered these problems, but they are particularly annoying.

At this point in time, the only solution I can offer is one that you've doubtless been already applying: Avoid plugging/unplugging your screens while using NCrunch in Rider. I'm not sure why this happens for you but not on my end - perhaps its related to something else in your display settings or hardware config, but I lack the capability to solve this problem for you.
A variant of the above occurred today, where the scrollbar is there, it's just incorrectly offset (I guess the trace output window is). It's offset both vertically and horizontally, and resizing the NCrunch Test window also resizes the Trace Output window, but it's always out of boundaries with the main window. Maybe the window size information used to draw the Trace output window is incorrect sometimes somehow? Is it suppose to re-render/redefine it's boundaries if the window is closed/hidden and opened again?

https://drive.google.com/file/d/1nOB3rofYlMpH61OvZauGpTLe1L_AzNZV/view?usp=sharing

EDIT: I realized that as soon as I click on any of the other panes and back again to Trace Output, the trace output window have re-rendered as described before; no scrollbar.

Edited

Sorry, the only suggestion I can make at this stage is to avoid changing your monitor layout while you have Rider running.
Thanks, I'll keep posting new findings in hope something comes to mind :)

I tried turning surround off (still multi-display), the same problems still occur.

Regarding window snapping, I realized I've been using "Float" as View Mode for the NCrunch Test window, when switching to "Window", snapping works just fine! Can't believe I missed that :) Doesn't solve the scrollbar / content alignment issues with the Trace Output window though.

Post a reply

Log in to reply.