Using Unit Test Sessions
JetBrains Rider allows you to group unit tests that target specific part of your application into unit test sessions. A unit test session can contain tests of different supported frameworks, from different projects. You can have multiple test sessions and run them separately as needed. A single test/test class can be included into several different test sessions.
By default, unit test sessions are saved automatically for each solution; JetBrains Rider keeps them even if you close and reopen the solution. If necessary, you choose not to keep unit test sessions by clearing the Save and restore Unit Test Sessions check-box on the page of JetBrains Rider settings (Ctrl+Alt+S).
Accessing unit test sessions
Unit test sessions management is done in the session tabs of the Unit Tests window. To open this window, press Alt+8 or choose from the current document or from the project/solution, create a new test session, or add tests to a test session.from the main menu. The window also opens automatically each time you run or debug unit tests
All existing unit test sessions are displayed in tabs of the Unit Tests window.
The Unit Tests window also visualizes the test runner activity: it displays execution progress as well as status and output of the executed tests. Each time you run or debug tests they are either added to the current test session or a new unit test session is created for them.
To search tests, start typing a test name or its CamelHumps abbreviation as soon as your focus is in this window.
When your focus is in the Unit Tests window, you can use simplified shortcuts for unit testing actions. For example, you can use Ctrl+D instead of Ctrl+U, D for debugging selected tests. Here is the full list of extra shortcuts that work in the Unit Tests window:
- Shift+Enter — Run Selected Tests
- Ctrl+D — Debug Selected Tests
- Ctrl+Y — Run Current Session
- Ctrl+F — Rerun Failed Tests
- Shift+Alt+Insert — Create New Session
- Ctrl+Alt+Insert — Append Selected Tests to Session
- Delete — Remove Selected Tests
- Ctrl+L — Run All Tests from Solution
Creating and closing unit test sessions
There are several ways to create a new test session:
- Just run or debug unit tests from the current document or from the project/solution. If there is an open unit test session, the executed tests are added in this session. If there are no test sessions then a new tests session is created.
- In the editor, click an action indicator next to a test or test class, and then choose Create New Session in the action list. A new session with this test/test class will be created.
- In the Unit Tests window, select tests/test classes for the new session and click Create New Session on the toolbar or press Ctrl+U, N.
- In the main menu, choose or press Ctrl+U, N. If the focus is in the editor or in the Unit Tests window and some tests/test classes are selected, or the caret is at or inside a test/test class, the new test session is created with the corresponding items. Otherwise, an empty test session is created.
To close a unit test session, simply close the corresponding tab in the Unit Test Sessions window. The closed session will not be available anymore.
Adding and removing items in a test session
By default, if you run or debug tests that are not included into any session the tests are added to the current session.
There are other ways to add tests/test classes to a session:
- In the editor, click an action indicator next to a test or test class, and then choose Append to [current session] in the action list. If you want to add the item to another section, click the small arrow next to this command and choose any of the existing test sessions in a sub-menu: You can also choose in the main menu or press Ctrl+U, A to add the selected items to a session.
- In the Unit Tests window, select tests/test classes that you want to add and press Ctrl+U, A. If there are more than one session, choose the target session in the pop-up that appears.
To remove tests from the session, select the tests or grouping items that you want to remove and click Remove Selected Tests on the toolbar.
Renaming test sessions
By default, the first test/class that you add to a new test session is used as the session's name.
To rename a session, right-click the session's tab and choose Rename session from the context menu and then specify a new name for the session in the appeared dialog.