2. Many new MSI installers authored in 2008
Large Matrix of Supported Scenarios
◦ Windows 2000, XP, 2003, 2008, Vista
◦ Upgrade from 11 versions of Application A
◦ Upgrade from 4 versions of Application B
2
3. Testing at Unit Test level
Developer writes and runs tests
Continuous Integration
Incremental Coverage
Reduced complexity
Single effort
3
4. C# Library
◦Integration with NUnit
Command-Line Tool
◦Integration with CruiseControl
Define Installers
MSBuild
ANT
Nunit Produce Boolean Results
Success
Define Infrastructure Execute Failure
VMWare Workstation RemoteInstaller
VMWare ESX
Snapshots
Snapshots
Snapshots
5. A Single MSI
Latest Build Installer
A Bootstrapped .EXE Installer
Specific DNI type
Command-line arguments to separate installers
Multiple Installers
Installer Sequences
LIFO, FIFO, Clean, Alternate
5
8. Simple Test
Product Usage
◦ Test Results
◦ CruiseControl Integration
8
9. Variable substitution
◦ ${env.Name}
Environment variables.
◦ ${var.Name}
A variable defined on the command line. Simple append name=value to the command line.
◦ ${folder.SpecialFolderName}
Special folders. The following special folder names are supported.
Combining Output
Execution Pipeline
◦ Clean, alternate, FIFO, LIFO
Collecting Additional Files
9