-
Notifications
You must be signed in to change notification settings - Fork 10.3k
Add missing BeforeTargets
for IIS local testing
#40379
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome thanks!
aspnetcore-quarantined-pr build #20220223.10 failed due to a transient-seeming |
This might fix some things, but unfortunately this doesn't do the trick for the main issue:
The tests still fail because no publish\InProcessWebSite-Portable type directories are created, I tried these changes out locally, both VS builds and full build.cmd still don't produce those directories which the tests expect. That is the main issue with the current test failures locally |
Thanks for the added information @HaoK. The IIS Express tests I tried didn't require the portable profile but failed w/o this. So, this change was necessary but not sufficient. Touching this PR up… |
If the tests don't work for you locally, you can turn off Helix via the BuildHelixPayload setting to trigger them running the old way to flush out any kinks in this PR |
What I tested before was
That worked fine and src\Servers\IIS\IIS\test\testassets\InProcessWebSite\bin\Debug\net7.0\publish\ contained both InProcessWebSite-Portable and InProcessWebSite-Standalone-x64 when tests completed. My second commit here should be redundant but are you doing similar things❔ |
I usually just do And then I've just been doing VS - test explorer run. I haven't tried running the full root eng/build today. There's also some issues with the fastuptodate checks that were removed in the IIS projects, I'll be adding those back, because the current behavior is that just editing the shared test cs files does not result in a rebuild, which is super confusing, as VS will happily run the old tests since it doesn't notice the shared cs files getting edited. |
/cc @Pilchie
Thought you said somewhere that you tried testing both from the command line and in VS. How do you test from the command line❔ I'll also see if I can repro your continued issues in VS w/ and w/o my second commit here. |
/fyi my current suspicion is that VS test explorer doesn't use the targets I added to |
@HaoK can you file an issue with detailed steps of what wasn't working when you add them back? I'd like to investigate and try fixing for real again. |
Sure filed #40387 with the steps to reproduce in main today, the repro is actually just on the managed test code, I believe there's similar issues with the native code, but its much easier to hit with just the top level SkipNonHelix on one of the common startup tests. |
ead351d
to
25bf983
Compare
Shoot, didn't mean to update this branch. Will reset… |
469bd1a
to
635b2a9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM if it works
@HaoK I was eventually able to reproduce the problems you're having with testing in VS. My thanks to @MarcoRossignoli for his help understanding the root cause. Basically, VS uses |
Yay, I'll make these changes in my branch to see if that fixes everything too |
This PR fixes things for me locally too! |
- VS (vstest.console.exe) examines the test assembly rather than using `msbuild` - do this for FunctionalTestWithAssets.targets as well
- otherwise, attempted to build test assets that weren't restored
- targets ran even if regular `@(ProjectReference)` items had been ignored
b272d4b
to
9a018b9
Compare
🎉 Success here (testing IIS mostly on Helix), success locally (including in VS), and success in #40381 (testing IIS mostly on build agents). 🎉 |
No description provided.