Hi,
I want to filter out "LongRunning" tests from NCrunch execution. To get that behaviour, I defined a test category "LongRunning", and setup the shared test configuration to specify that only test that don't have this category should be run:
[img=https://i.imgur.com/W28TTLa.jpg]Categories[/img]
But when NCrunch runs, even though I can see the category has been recognised, the tests are still shown as pending:
[img=https://i.imgur.com/PdBn8hj.jpg]Tests[/img]
They are also showing up as pending in the Test queue view.
How can I properly ignore these tests?
Cheers,
Nico
Daily Usage Issues
Filtered tests are stuck in 'Pending' status
Started by ndeslandes on 3,777 views
Remco NCrunch Developer
#11857
01 Mar 2018 23:39 UTC
Hi Nico,
The 'Pending' status represents tests that haven't yet been executed. It's an assumption by NCrunch that a pending test will eventually be executed, though under your configuration this would not be possible (unless a grid node were connected without the configured constraint). So perhaps a better status description in this case would be 'Unexecuted'.
The 'Tests to execute on this machine' setting is usually used for distributed processing to control which servers are able to target specific groups of tests. For your purposes, it would probably be better to use the 'Tests to execute automatically' configuration setting instead, as I'm assuming that these tests can still be run under NCrunch manually. Tests that are excluded using this setting won't be queued for execution unless they are specifically targeted in the UI.
If the tests simply cannot be run by NCrunch at all and you don't want to see them, it's better to use the 'Ignored tests' feature in the Tests Window to hide them from your session.
The 'Pending' status represents tests that haven't yet been executed. It's an assumption by NCrunch that a pending test will eventually be executed, though under your configuration this would not be possible (unless a grid node were connected without the configured constraint). So perhaps a better status description in this case would be 'Unexecuted'.
The 'Tests to execute on this machine' setting is usually used for distributed processing to control which servers are able to target specific groups of tests. For your purposes, it would probably be better to use the 'Tests to execute automatically' configuration setting instead, as I'm assuming that these tests can still be run under NCrunch manually. Tests that are excluded using this setting won't be queued for execution unless they are specifically targeted in the UI.
If the tests simply cannot be run by NCrunch at all and you don't want to see them, it's better to use the 'Ignored tests' feature in the Tests Window to hide them from your session.
Edited 01 Mar 2018 23:39 UTC
Right on! For some reason I didn't even notice the "Tests to execute automatically" setting.
Your suggestion is exactly what I needed.
The tests are still marked as "Pending", but I can live with that. At least the global state now completes (ie the Stop button is grayed out, and the notification area in the status bar is happy).
Thanks Remco!
Your suggestion is exactly what I needed.
The tests are still marked as "Pending", but I can live with that. At least the global state now completes (ie the Stop button is grayed out, and the notification area in the status bar is happy).
Thanks Remco!
Post a reply
Log in to reply.