How can you use “external” configuration files (i.e. with configSource) with an MSTest unit test project?

后端 未结 3 804
误落风尘
误落风尘 2021-02-05 22:53

For simplicity, I generally split a lot of my configuration (i.e. the contents of app.config and web.config) out into separate .config files, and then reference them from the ma

相关标签:
3条回答
  • 2021-02-05 23:16

    Test run configurations are a bit awkward when trying to run tests outside of Visual Studio.

    For command line execution using MSTest they become quite cumbersome to keep "clean". They are also "global" to the solution so external files will be copied for every test project.

    I much prefer the DeploymentItem attribute.

    [TestMethod]
    [DeploymentItem(@"test_data.file")]
    public void FooTest()
    {...}
    

    Makes the tests independent of the .testrunconfig files.

    0 讨论(0)
  • 2021-02-05 23:22

    Found it:

    If you edit the test run configuration (by double clicking the .testrunconfig file that gets put into the 'Solution Items' solution folder when you add a new unit test), you get a test run configuration dialog. There's a section there called 'Deployment' where you can specifiy files or whole folders from anywhere in the solution that can be copied out with the compiled assemblies at run time to the correct folder.

    In this way, I can now actually just define most of my configuration in one set of external .config files and have them automatically copied out at the run of each test.

    0 讨论(0)
  • 2021-02-05 23:33
    1. write this in your connectionString. First ConnectionString.config is not exists.

      <"connectionStrings configSource="ConnectionString.config"> "

    2. open command prompt (CMD) in administrator privileged.

    3. Create a symbolic links with the name of ConnectionString.config at bin/debug folder.

    C:\Windows\Systems32> mklink "C:\Link To Folder\....\ConnectionString.config" "C:\Users\Name\Original Folder\.....\...\Secure ConnectionString.config"

    finally it creates ConnectionString configuration file at the specified location. and works successfully.

    0 讨论(0)
提交回复
热议问题