-
Notifications
You must be signed in to change notification settings - Fork 554
[XHarness] Reduce the number of test applications for the BCL tests. #5768
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
|
This moves to have just 4 apps for ALL the BCL tests. Once landed, I'll try to move all BCL tests to 2 single Mac OS X apps, one for NUnit, other for xUnit. |
spouliot
left a comment
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.
Make sure this runs correct on device for 32bits, i.e. both iOS and watchOS
I'm concerned that either/both the native linker (24bits) limits and watchOS timeouts could break this
Maybe it's possible to have this grouping optional ?
|
Build failure |
|
build |
rolfbjarne
left a comment
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.
Maybe it's possible to have this grouping optional ?
One possibility is to add both options to the list of tests when running locally (in server mode). This would mean the non-grouped versions won't even exist on the bots.
| "monotouch_System.Security_xunit-test.dll", | ||
| "monotouch_System.Runtime.Serialization_xunit-test.dll", | ||
| "monotouch_System.Runtime.CompilerServices.Unsafe_xunit-test.dll", }), | ||
| (name:"BCL tests group 4", assemblies: new[] { "monotouch_System.Core_xunit-test.dll", |
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.
A couple of really minor naming points:
- Maybe name the XUnit and Unit tests differently:
BCL tests group X (NUnit)andBCL tests group X (XUnit). - I'd intuitively expect the most basic/important assemblies to use a lower number: that the mscorlib/System tests would be in group 1, and more peripheral assemblies in group >1.
|
Build failure |
|
build |
|
Build failure |
|
Build failure |
This commit improves the state of the BCL testing in the following ways:
1. Improve the device tets running. Less apps, faster results.
2. Reduces the chances of getting issue
https://github.com/xamarin/maccore/issues/581 when running the tests
since we have less apps to run.
We now support the ignore files per assembly name to simplify the
tracking of the ignored tests.
|
@rolfbjarne got a nice idea on how to do it so that locally they are not grouped (better for the developer to test and debug) and group on jenkins). You might or not like it ;) |
|
@mandel-macaque it'd be nice if this was an option, I'd like to use the grouped version locally too. |
|
build |
|
Build success |
65197d7 to
1bcdda4
Compare
|
@spouliot @akoeplinger after the last push, it is an option. You can make xharness think you are on Jenkins setting the env var https://github.com/xamarin/xamarin-macios/blob/master/tests/xharness/Harness.cs#L692 else, if that env var does not have the right value, you will get one app per assembly as we used. I have not look much into the group naming, so ideas are welcome (simple string replacement). |
|
Build failure ✅ Build succeeded |
|
@mandel-macaque that's pretty non-discoverable and reusing the Jenkins variable probably has other implications? why not add a separate option? |
|
Build failure |
|
@akoeplinger code/var reuse, but add a new one in the last commit: 343efd7#diff-8f44b7ce671e35190b27341716ad7e8cR699 |
|
Build failure Test results5 tests failed, 0 tests skipped, 181 tests passed.Failed tests
|
…ot contain ignored assemblies.
|
Looks like the combination of tests assemblies on mac os x makes the tests block. Will provide a sample to @akoeplinger Current split works. Also, if an assembly is ignore in a platform, it will not be included in the grouped app. |
|
Build failure Test results2 tests failed, 0 tests skipped, 190 tests passed.Failed tests
|
|
Build success |
|
As per las commit, iOS/tvOS and MacOS apps are grouped, watchOS are not due to small issues with the deployment to the device and their execution. |
|
Build failure Test results1 tests failed, 0 tests skipped, 219 tests passed.Failed tests
|
|
The failing issues is known: https://github.com/xamarin/maccore/issues/619 |
…otnet#5768) This commit improves the state of the BCL testing in the following ways: 1. Improve the device tets running. Less apps, faster results. 2. WatchOS apps are left as they were to ensure that we do not have deplouyment/run issues. We now support the ignore files per assembly name to simplify the tracking of the ignored tests. All
…5768) This commit improves the state of the BCL testing in the following ways: 1. Improve the device tets running. Less apps, faster results. 2. WatchOS apps are left as they were to ensure that we do not have deplouyment/run issues. We now support the ignore files per assembly name to simplify the tracking of the ignored tests. All
…5980) * [tests] Don't run BitcodeNotSupported tests on watchOS. (#5744) Ref: mono/mono#13007 * [tests] Check all architectures when verifying public symbols. (#5745) This also means updating the whitelisted symbols. * [XHarness] Don't run BitcodeNotSupported BCL tests on watchOS. (#5750) * [xharness] Remove bitcode from tvOS apps. (#5781) We don't need the bitcode for testing, it makes test apps bigger (so big that the Apple TV might refuse to install them). * [XHarness] Reduce the number of test applications for the BCL tests. (#5768) This commit improves the state of the BCL testing in the following ways: 1. Improve the device tets running. Less apps, faster results. 2. WatchOS apps are left as they were to ensure that we do not have deplouyment/run issues. We now support the ignore files per assembly name to simplify the tracking of the ignored tests. All * [XHarness] Ensure we do not crash if the framework node is missing. (#5792) * [xharness] Fix BuildOnly logic (#5813) #4884 introduced the logic of only building certain `RunTestTask`. This was meant to disable iOS Extensions as part of a fix to xamarin/maccore#1008. However this didn't quite work and iOS extensions were still running (and failing). The reason being that `BuildOnly` was set to a `RunDeviceTask` that's added to a list which is then given to `CreateTestVariations` which creates new instances of `RunDeviceTask`. We now propagate `BuildOnly` to the new variation instance. * [XHarness] Fix IntermediateOutputPath getting inserted in the wrong place. (#5841) * Ignore tests for devices (#5807) * [XHarness] Ignore some tests that fail on device. Added the ignore, which can be later removed on the new mono 2019-02 since the issues do not happen there. Fixes: xamarin/maccore#1495 * [XHarness] Ignore corlib tets failing on devices. Added the required ignores to get the devices green and workaround mono issue mono/mono#13641 * [XHarness] Ignore a failing test on devices. (#5848) * [XHarness] Update ignore for some failing tests. (#5887) The mono bump added some new tests that fail on device + release configurations. This is a known issue by mono and they'll fix it in the next version but will not be backported to 2018-10. * [XHarness] Ignore monotouch_Microsoft.CSharp_xunit-test.dll until issue 5868 is fixed. (#5869) If not ignored, we will have an issue building the test app on device resulting on a failure. * [d16-1][xharness] Skip fsharp iOS tests until #5886 is merged This can be reverted if #5886 makes it in. * [XHarness] Fix issues building the today extensions for the BCL tests apps. (#5854) * [d16-1][xharness] Ignore failing device tests because mono backports are impossible * [d16-1][xharness] Ignore correct interp tests and more BCL group 1 * [d16-1][xharness] Ignore mscorlib interpreter (debug) test * [tests] Adjust SetupBlockPerfTest to expect at least a 4x speedup instead of 6x We hit this: ``` Expected: greater than 6 But was: 4.9317220348827826d ``` So adjusting to 4 to avoid those random failures. See xamarin/maccore#649 for more details.
This commit improves the state of the BCL testing in the following ways:
https://github.com/xamarin/maccore/issues/581 when running the tests
since we have less apps to run.
We now support the ignore files per assembly name to simplify the
tracking of the ignored tests.