Skip to content

Long response files don't work with dotnet test & dotnet vstest Β #3513

Closed as not planned
@nohwnd

Description

@nohwnd

vstest.console can take a response file that is used to provide parameters to vstest.console.exe when the parameters become larger than the command line limit of 32k characters, for example when there is a huge test filter or a lot of dlls with long paths.

vstest.console is able to consume that file just fine, but:

  • dotnet test, fails to see that this is a dotnet test + dll run, and fails to run.
  • dotnet vstest expands the file and tries to relay to vstest.console using command line, hitting the same 32k command limit the response file was trying to avoid.

Example (obviously make the filter much longer, or provide way more dlls, even copies of the same dll name are fine):


C:\t\mstest46\bin\Debug\net7.0\mstest46.dll  C:\t\mstest47\bin\Debug\net7.0\mstest47.dll /TestCaseFilter:"FullyQualifiedName=mstest46.UnitTest1.TestMethod1|FullyQualifiedName=mstest46.UnitTest1.TestMethod2"

Call from powershell (escaping the @ to avoid splatting): & "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Extensions\TestPlatform\vstest.console.exe" `@parameters.rsp
Or from cmd: "C:\Program Files\Microsoft Visual Studio\2022\ Enterprise \Common7\IDE\Extensions\TestPlatform\vstest.console.exe" @parameters.rsp

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions