问题
I'm trying to figure out which is the command line arguments used by Visual Studio when you run the MsTest tests, I guess it starts with:
MSTest.exe /testmetadata:%SolutionName%.vsmdi /testlist:
But I couldn't figure out how to fill the testlist parameter, because both the test list name and id get the following error:
The test list path 8c43105b-9dc1-4917-a39f-aa66a61bf5b6 cannot be found.
An error occurred while executing the /testlist switch.
回答1:
I'm trying to figure out which is the command line arguments used by Visual Studio when you run the MsTest tests
It depends on how do you run your tests from Visual Studio. See the following examples:
You are selecting some tests from the
Test View
window and run themMSTest.exe /testcontainer:TestProject.dll /test:TestMethod1 /test:TestMethod2 ...
Your are running all the tests from the
Test View
windowMSTest.exe /testcontainer:TestProject.dll
You have filtered your tests by a category through
Test View
window and run this categoryMSTest.exe /testcontainer:TestProject.dll /category:CategoryName
You have opened the
*.vsmdi
file and selected someTestLists
to runMSTest.exe /testmetadata:*.vsmdi /testlist:TestList1 /testlist:TestList2 ...
You are running Load or Ordered tests
MSTest.exe /testcontainer:LoadTest1.loadtest /testcontainer:OrderedTest1.orderedtest
You can combine the above examples (arguments) to create the MSTest
command that suits on your case. The only restriction you have is that you cannot use the /testmetada
and /testcontainer
arguments together.
As for the TestList
argument you just need to give as parameter the name of the list. If it is not found then your test list does not exist or it does not belong to the *.vsmdi
you have defined on the /testmetadata
argument.
I am sure that you have already done it, but you can check the following link: MSTest.exe Command-Line Options
回答2:
See following link. Even though this post is about msbuild. It uses exec task for calling mstest. If you use /testlist you need to give metadata file. You can use /testcontainer and give dll for your test project. It will run all of your tests.
/testcontainer:[file name] Load a file that contains tests. You can
Specify this option more than once to
load multiple test files.
Examples:
/testcontainer:mytestproject.dll
/testcontainer:loadtest1.loadtest
来源:https://stackoverflow.com/questions/4679966/what-command-line-arguments-does-visual-studio-use-for-running-mstest