Skip to content

Make running netfx assemblies via Mono opt-in on non-Windows platforms #4908

Closed as not planned
@akoeplinger

Description

@akoeplinger

Description

Right now VSTest will run .NET Framework assemblies using Mono on Unix platforms. This was useful in the past but nowadays the more common usage is multi-targetting a test assembly for net462/net8 where the netfx assembly contains Windows-specific code.

This results in issues like dotnet/runtime#81395 where a test assembly tried to run on mono unexpectedly.

Steps to reproduce

$ dotnet new mstest
  1. Edit the .csproj to contain <TargetFrameworks>net462;net8.0</TargetFrameworks> and <LangVersion>Latest</LangVersion>.

  2. Run dotnet test

Expected behavior

Only runs the tests once, for the net8.0 assembly.

Actual behavior

Runs both the net8.0 and net462 assembly, the latter using Mono.

Diagnostic logs

Environment

macOS 14, dotnet 8

Metadata

Metadata

Assignees

No one assigned

    Labels

    Help-WantedThe issue is up-for-grabs, and can be claimed by commenting

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions