Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ReSharper Unit Test not run in bin directory

Preamble

I know, that this question seems to have anwsers here:

  • Resharper runs UnitTest from different location
  • Resharper Unit Test Runner Can't Find Content Files

I have nearly the same problem like ReSharper 10 test runner failing to find AppSettings referenced from external file. But these answer stated, that the problem should be gone with ReSharper 10.0.2

Question

I included a custom.xml files with custom settings, and I need to read them from my unit test. But my file is not found.

I looked, where the process runs, and included this line

var curdir = Directory.GetCurrentDirectory(); 

So I found out, that curdir is C:\\Users\\MYUSER\\AppData\\Local\\JetBrains\\Installations\\ReSharperPlatformVs11_000

Now it is obvious that my file cannot be found. After googling it, it found the above mentioned questions. But none of these solutions works for me.

These are my settings:

ReSharper Settings

Visual Studio Configuration

Microsoft Visual Studio Ultimate 2012

Version 11.0.61219.00 Update 5

Microsoft .NET Framework

Version 4.6.01038

Installierte Version: Ultimate

  • Architecture and Modeling Tools 04940-004-0038003-02857
  • Team Explorer für Visual Studio 2012 04940-004-0038003-02857
  • Microsoft Team Explorer für Visual Studio 2012
  • Visual Basic 2012 04940-004-0038003-02857
  • Microsoft Visual Basic 2012
  • Visual C# 2012 04940-004-0038003-02857
  • Microsoft Visual C# 2012
  • Visual C++ 2012 04940-004-0038003-02857
  • Microsoft Visual C++ 2012
  • Visual F# 2012 04940-004-0038003-02857
  • Microsoft Visual F# 2012
  • Windows Phone SDK 8.0 - DEU 04940-004-0038003-02857
  • Windows Phone SDK 8.0 - DEU
  • ASP.NET and Web Tools 2012.3.41009
  • GenerateUnitTest 1.0
  • Git Source Control Provider 1.0.0.0
  • JetBrains ReSharper Ultimate 10.0.2 Build 104.0.20151218.120627
  • Microsoft Advertising SDK for Windows Phone 6.2.923.0
  • Microsoft Advertising SDK for Windows Phone Build 6.2.923.0
  • Microsoft XNA Game Studio 4.0
  • Microsoft XNA Game Studio 4.0
  • NuGet-Paket-Manager 2.8.60318.667
  • PreEmptive Analytics Visualizer 1.0
  • SQL Server Data Tools 11.1.20627.00
  • Microsoft SQL Server Data Tools
  • Git Extensions
like image 535
Rico-E Avatar asked Mar 25 '16 15:03

Rico-E


People also ask

How do I run unit tests with ReSharper?

Right click on the project or solution in the VS solution-explorer and choose 'Run Unit Tests' Or go to the Resharper menu, choose Unit-Testing and choose one of the options from there.

How do I open Unit Test Explorer ReSharper?

ReSharper adds the Unit Test Explorer window to Visual Studio (ReSharper | Unit Tests | Unit Tests or ReSharper | Windows | Unit Tests, or Ctrl+Alt+U ). Using this window, you can explore and run or debug unit tests of all supported frameworks in the entire solution.


2 Answers

You don't list any version of NUnit installed, but you tagged this 'nunit' so I'm going to make an assumption you are using it! Further, I'm assuming NUnit >= 3.0... ignore this if otherwise. :-)

NUnit 3.0 stopped changing current directory. It's a bad idea for us to do that anyway and it's a really bad idea with 3.0, when multiple assemblies in differing directories may be running at the same time.

So, assuming still it's an NUnit problem, instead of using a relative path, use TestContext.CurrentContext.TestDirectory as the location of your file.

like image 122
Charlie Avatar answered Sep 20 '22 05:09

Charlie


try this:

Directory.SetCurrentDirectory(AppDomain.CurrentDomain.BaseDirectory); 
like image 24
Ahmad Mousavi Avatar answered Sep 20 '22 05:09

Ahmad Mousavi