Running in Virtual Machines
Run your setup inside virtual machines directly from the custom unit testing.
for automated testing inside guest operating systems, includingBefore running your setup inside a virtual machine, ensure you have created your virtual machine repository and updated your project settings for virtual machine support.
To Access Your Virtual Machine (Server) Repository
To add or remove virtual machines and/or virtual machine servers to/from your repository:
- Display the .
- Select the node, or the node, or the node in the tree view.
- Right-click and choose .
- Depending on your selection above, edit your repository of virtual machines or virtual machine servers as desired.
To Supply or Edit Virtual Machine Credentials
You must provide a working login to a virtual machine guest operating system user account, before you may test your setup inside a given virtual machine under the supplied guest operating system user account.
To specify the user account under which to run setups inside virtual machines:
- Display the .
- Select one or more virtual machines to supply credentials for beneath the node, or beneath one of the server nodes found under the or server nodes in the tree view.
- Right-click your selection and choose , and enter user account names and passwords for the selected virtual machines.
If credentials have not been already specified at the time you are running your setup inside a virtual machine, you will be automatically prompted to enter the necessary credentials.
To Supply or Edit Virtual Machine Server Credentials
You must provide a login to a virtual machine server before you may connect to the server and obtain a list of virtual machines hosted on the virtual machine server.
To specify the server account under which to connect to virtual machine servers:
- Display the .
- Select one or more virtual machine servers to supply credentials for beneath the or beneath the server nodes in the tree view.
- Right-click your selection and choose , and enter user account names and passwords for the selected servers.
If credentials have not already been specified at the time you are connecting to a virtual machine server, you will be automatically prompted to enter the necessary credentials.
To Run Inside Virtual Machines
You may run your setup inside the currently active snapshot within one or more virtual machines directly within the InstallAware IDE.
To run the active setup project inside one or more virtual machines:
- Display the .
- Select one or more virtual machines to run inside beneath the node, or beneath one of the server nodes found under the or server nodes in the tree view.
- Right-click your selection and choose a deployment type to run inside the selected virtual machines from the deployment type inside the selected virtual machines. menu, or double-click to run your default
- An arrow icon appears next to the virtual machines selected, indicating that your automated tests have begun.
- As tests complete, the arrow icon will change to a check mark or a cross mark, indicating either success or failure of testing and/or unit testing.
Simultaneous Execution Within Multiple Virtual Machines
You may start new tests inside additional virtual machines while tests are ongoing inside previously selected virtual machines, or you may select more than one virtual machine to simultaneously start testing with initially.
However, ensure you do not select more virtual machines than your PC can simultaneously execute, or performance will be very significantly degraded compared to running inside virtual machines individually. Simultaneously running setups inside multiple virtual machines will require multiple core CPUs and especially fast RAID 0 storage arrays and/or fast SSD storage.
Virtual Machine Interaction Requirements
Unit testing minimizes the need to manually interact with virtual machines while tests are under way.
However, because of limitations in the default InstallAware supplied unit test does not), you will also need to explicitly authorize unit test elevation requests.
operating system, when is enabled, you will need to explicitly authorize elevation requests for each installation and uninstallation, when your setups have been authored with elevated privilege requirements. If your unit tests themselves require elevation (theAt your discretion, you may also completely disable
in your guest operating systems to fully automate all virtual machine testing, including unit testing, as an alternative to having to manually authorize guest operating system elevation requests.Setup Project Configuration
If your setup project has not been previously configured for virtual machine testing, you will be offered to automatically add the necessary configuration information to your setup project. At a minimum, the guest operating system target folder must be specified before you may run your setups inside virtual machines.
To Run Inside a Specific Virtual Machine Snapshot
You may run your setup inside a specific snapshot of a selected virtual machine within the InstallAware IDE.
- Display the .
- Select one or more virtual machines to run inside beneath the node, or beneath one of the server nodes found under the or server nodes in the tree view.
- Expand the virtual machine node you selected (click the plus icon or the arrow sign immediately to the left of the virtual machine icon). This displays the snapshots available as part of the virtual machine you selected.
- Double-click the snapshot to run your default deployment type inside the selected virtual machine snapshot, or first single-click the snapshot, and then right-click and choose the non-default deployment type to run inside the selected virtual machine snapshot from the menu.
- An arrow icon appears next to the virtual machine you selected, indicating that your automated tests have begun. As tests complete, the arrow icon will change to a check mark or a cross mark, indicating either success or failure of testing and/or unit testing.
As above, you may start new tests inside additional virtual machines while tests are ongoing inside previously selected virtual machines.
Of course, it is not possible to simultaneously test within more than one snapshot of any given virtual machine.
To Stop a Virtual Machine
To stop an ongoing test inside a virtual machine:
- Display the .
- Select one or more virtual machines to stop beneath the node, or beneath one of the server nodes found under the or server nodes in the tree view.
- Right-click your selection and choose DELETE. , or press
The tests will be aborted. You may immediately repeat a test after aborting it.
To Analyze Virtual Machine Testing Results
To analyze the results of a test inside a virtual machine:
- Display the .
- Select one or more virtual machines to analyze beneath the node, or beneath one of the server nodes found under the or server nodes in the tree view. Please note that a test must have already been completed.
- Right-click your selection and choose INSERT. , or press
The displayed analysis includes a summary of the tests run on the selected virtual machines, the result of each individual test, and a textual description of the last error encountered, if any, during testing.