aboutsummaryrefslogtreecommitdiff
path: root/src/test/msi/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/msi/README.md')
-rw-r--r--src/test/msi/README.md29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/test/msi/README.md b/src/test/msi/README.md
new file mode 100644
index 00000000..2b4ff9a4
--- /dev/null
+++ b/src/test/msi/README.md
@@ -0,0 +1,29 @@
1# integration
2
3This layer is for building installers, and then executing xunit tests that run them and verify that they worked.
4
5## Running tests
6
7The main focus of these tests is to validate behavior in a real environment.
8Depending on who you talk to, these are integration or system-level or end-to-end (E2E) tests.
9They modify machine state so it's strongly recommended *not* to run these tests on your dev box.
10They should be run on a VM instead, where you can easily roll back.
11
121. Run build.cmd to build everything (the tests will not automatically run).
131. Copy the build\IntegrationMsi\Debug\netcoreapp3.1 folder to your VM.
141. Open an elevated command prompt and navigate to the netcoreapp3.1 folder.
151. Run the runtests.cmd file to run the tests.
16
17You can modify the runtests.cmd to run specific tests.
18For example, the following line runs only the specified test:
19
20> dotnet test --filter WixToolsetTest.BurnE2E.BasicFunctionalityTests.CanInstallAndUninstallSimpleBundle_x86_wixstdba WixToolsetTest.BurnE2E.dll
21
22The VM must have:
231. x64 .NET Core SDK of 3.1 or later (for the test runner)
24
25## Building with local changes
26
27The current build process will poison your NuGet package cache, so you may have to run the following command to clear it:
28
29> nuget locals all -clear \ No newline at end of file