[SR-1749] Split Android tests into host tests and non-host tests #44358
Labels
Android
Platform: Android
build-script
Area → utils: The build script
continuous integration
good first issue
Good for newcomers
improvement
platform support
test suite
Area: test suite
Additional Detail from JIRA
md5: c2b56bd2bca26efee9b877588b77480a
Issue Description:
The Swift build system and test suite define "host tests" (tests that are executed on a physical device or simulator). Tests that are not "host tests" can be run without a device or simulator.
Currently, all tests for Android are only run if
--host-tests
is passed to the Swiftutils/build-script
when testing. However, only some of these tests actually require an Android device--most can run on a Linux desktop.Tests in the Swift test suite are already marked as "host tests" or not – there's no need to modify individual tests. However,
utils/build-script
andutils/build-script-impl
need to be modified to take advantage of the "host tests" flags, like iOS does.Prerequisites:
An Ubuntu 15.10 development environment capable of building Swift from source.
A physical Android device.
Helpful skills:
Basic knowledge of Python, shellscript, and CMake may help.
Starting point:
Follow the instructions in docs/Android.md to build and run the test suite on a physical Android device.
Check out the Android test logic. Notice how it's different from the Apple TV test logic? I think these need to be the same, or at least more similar (although I don't think Android needs the benchmark tests).
Once the task is finished, I should be able to run a subset of the Android test suite, even without a physical Android device. This is exciting because it will lower the hurdle for testing Swift on Android on some sort of CI server.
The text was updated successfully, but these errors were encountered: