Cargo already uses the term 'integration test' for tests living in the tests/ directory of a crate. To prevent confusion, rename our 'integration_tests' crate to 'e2e_tests'. BUG=None TEST=presubmit Change-Id: Icfa819eaed08be54ab0f36092f1ba367f3f1ce88 Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/4004977 Commit-Queue: Dennis Kempin <denniskempin@google.com> Reviewed-by: Zihan Chen <zihanchen@google.com> |
||
---|---|---|
.. | ||
guest_under_test | ||
tests | ||
Cargo.toml | ||
README.md | ||
run |
Crosvm End to End Tests
These tests run a crosvm VM on the host to verify end to end behavior. They use a prebuilt guest kernel and rootfs, which is downloaded from google cloud storage.
Running with locally built kernel/rootfs
If the test needs to run offline, or you want to make changes to the kernel or rootfs, you have to
specify the environment variables CROSVM_CARGO_TEST_KERNEL_BINARY
and
CROSVM_CARGO_TEST_ROOTFS_IMAGE
to point to the right files.
The use_local_build.sh script does this for you:
$ source guest_under_test/use_local_build.sh
Uploading prebuilts
Note: Only Googlers with access to the crosvm-testing cloud storage bin can upload prebuilts.
To upload the modified rootfs, you will have to uprev the PREBUILT_VERSION
variable in:
./guest_under_test/PREBUILT_VERSION
src/third_party/chromiumos-overlay/chromeos-base/crosvm/crosvm-9999.ebuild
Then run the upload script to build and upload the new prebuilts. Never try to modify an existing prebuilt as the new images may break tests in older versions.