ReSharper 2024.2 Help

Unit test sessions

You can group unit tests that target specific parts of your application into multiple 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 in several different test sessions.

Access unit test sessions

Unit test sessions management is done in the Unit Test Sessions window. To open this window, press Control+Alt+R or choose ReSharper | Windows | Unit Test Sessions from the main menu. The window also opens automatically each time you run or debug unit tests from the current document or from the project/solution, create a new test session, or add tests to a test session.

All existing unit test sessions are displayed in tabs of the Unit Test Sessions window, where you can execute tests and analyze results.

ReSharper: Unit test sessions

The Unit Test Sessions 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.

Create and close 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 to that session. If there are no test sessions or the existing ones are locked, then a new tests session is created.

  • In the editor, click an action indicator next to a test or test class or place the caret at this item and press Alt+Enter, and then choose Create New Session in the action list. A new session with this test/test class will be created.

  • In the Unit Test Explorer window, select tests/test classes for the new session and choose Create New Session ThemedIcon.NewSession.Screen.(Gray).png from the context menu or press Control+T N.

  • From the main menu, choose ReSharper | Unit Tests | Create New Session or press Control+T N. If the focus is in the editor or in the Unit Test Explorer 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.

If you want to prevent adding new tests to the session, you can lock this session.

To close a unit test session, close the corresponding tab in the Unit Test Sessions window. The closed session will not be available anymore.

Add and remove items in a test session

By default, if you run or debug tests that are not included in any session the tests are added to the current session.

If you want to prevent adding new tests to the session, you can lock this 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 or place the caret at this item and press Alt+Enter, 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:

    ReSharper: appending tests to a test session

    You can also choose ReSharper | Unit Tests | Append Tests to Session in the main menu or press Control+T A to add the selected items to a session.

  • In the Unit Test Explorer window, select tests/test classes that you want to add and click Append Tests to Session ThemedIcon.AddedParameter.Screen.(Gray).png on the toolbar or press Control+T A. If there are more than one session, choose the target session in the popup that appears.

To remove tests from the session, select the tests or grouping items that you want to remove and click Remove Selected Tests ThemedIcon.Remove.Screen.(Gray).png on the toolbar.

Rename 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 or double-click the tab, and then specify a new name for the session in the appeared dialog.

Lock and unlock unit tests sessions

By default, if you run or debug tests that are not included in any session the tests are added to the current session.

If necessary, you can prevent adding new tests to a session. To do so, in the Unit Test Sessions window switch to the tab of the session that you want to lock, click Options on the toolbar, and then select Lock Session Lock Session.

To unlock the session, repeat the same actions.

Save and restore unit test sessions

By default, unit test sessions are saved automatically for each solution; ReSharper 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 checkbox on the Tools | Unit Testing page of ReSharper options .

If necessary, you can also save any test session in a file and then open it when needed. To save a session, select the corresponding tab in the Unit Test Sessions window and click Export Session ThemedIcon.Export.Screen.(Gray).png on the toolbar and then choose where to save the session file.

To open a saved session, click Import Session ThemedIcon.Import.Screen.(Gray).png in the Unit Test Explorer or Unit Test Sessions window and then select a .testsession file.

Last modified: 25 September 2024