-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
./build.sh --test fails to find 'xunit.console.dll' #97470
Comments
Tagging subscribers to this area: @hoyosjs Issue DetailsI'm working on making our internal CI build .NET 9 (that is: Our runtime jobs fail while executing tests with this message:
I think this stopped working since 8726d6b. Maybe it has to do with the changes to In our builds, we're building the @ViktorHofer do you have some thoughts on what is the cause, and how it can be fixed? @ericstj I saw your PR here: #97454 and thought it might be related. I ran gave your branch to our CI, but unfortunately it did not solve the issue. cc @omajid
|
@ViktorHofer was removing the unit packref intentional? |
I'd say this is definitely caused by #96826 which my PR is reverting. In that PR we intentionally try to avoid copying Xunit.Console to the output unless we're sending tests to helix. Copying to the output was interfering with test discovery by It's possible that the arcade update PR is also causing this, but I don't see how. |
Yes. We don't reference the meta package anymore as we need to control the xunit analyzer version separately. Arcade has been doing this for a while now: https://github.com/dotnet/arcade/blob/72f32d7d6880a97b457553ff601c383aaf69c902/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnit/XUnit.targets#L9-L13 |
Yes, but then the runner targets bring in |
This was also my first suspect, but after doing some builds I suspect the Arcade PR instead.
The Arcade PR went in before your PR, and this what is in my build log for it:
|
@tmds do you have a binlog that I could look at? |
I tried to reproduce the issue on my machine, and found out it only happens when I use the following command to reproduce it:
I'll send you two via mail (one with and one without |
This will fix dotnet/runtime#97470 While looking at Tom's binlog I noticed that the ExcludeFrom* infrastructure kicks in when building test projects in runtime. This wasn't the case before c0c425d as the `IsTestProject` property was read before it got defined in runtime. My commit fixed that... but unintentionally broke Tom's scenario (building tests although DotNetBuildFromSource is true). I asked Tom to add `DotNetBuildSkipTests=false` to their pipeline so that they can continue to build and run tests under source-build. To make this work, the legacy switches need to respect `DotNetBuildSkipTests` otherwise they would have to wait weeks or months. Also, I don't see any reason why the legacy switches can't respect that setting.
Tom and I synced offline and we found the reason. I submitted dotnet/arcade#14413 to fix this. See my detailed commit message in there. Additionally I submitted dotnet/arcade#14414 to make it possible to disable the entire |
I'm working on making our internal CI build .NET 9 (that is:
main
) branches.Our runtime jobs fail while executing tests with this message (for each test project):
I think this stopped working since 8726d6b. Maybe it has to do with the changes to
xunit.props
in that commit.In our builds, we're building the
clr+libs+host+packs+libs.tests
subsets.And we're running tests using
./build.sh --subset libs.tests --test
.@ViktorHofer do you have some thoughts on what is the cause, and how it can be fixed?
@ericstj I saw your PR here: #97454 and thought it might be related. I gave your branch to our CI, but unfortunately it did not solve the issue.
cc @omajid
The text was updated successfully, but these errors were encountered: