Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Resharper runs UnitTest from different location

When I run unit tests with Visual Studio it works fine, because it runs from project directory where all assemblies are. But when I run it with resharper it goes with error on

var services = Assembly.Load("SomeAssembly"); 

with error

Could not load file or assembly 'SomeAssembly' or one of its dependencies. The system cannot find the file specified..

So i've tried

var path = Assembly.GetExecutingAssembly().Location; 

and it's not project one. It's

C:\Users\*UserName*\AppData\Local\Temp\TestResults\...\Out\

and there is no 'SomeAssembly'. How do I configure resharper correctly or collect all assemblies like Visual Studio does?

It happens with unit tests but not with NUnit, any ideas?

like image 822
Roar Avatar asked Apr 26 '13 07:04

Roar


People also ask

How does ReSharper determine code coverage?

Ctrl+U D commands. You can use this command to run coverage analysis of unit tests from the editor, from the Solution Explorer, or from unit tests sessions.

How do you unit test a session?

Access unit test sessions Unit test sessions management is done in the Unit Test Sessions window. To open this window, press Ctrl+Alt+T or choose ReSharper | Windows | Unit Test Sessions from the main menu.


1 Answers

Resharper shadow copies assemblies for testing by default. If you turn off shadow-copy, it will run in the bin folder and the test should pass. Here are some instructions on turning it off.

like image 151
tallseth Avatar answered Sep 21 '22 10:09

tallseth