Compact Stress Tool (Compact 7)
3/12/2014
You can use the Compact Stress tool, which is installed by default with the Windows Embedded Compact Test Kit (CTK), to stress-test your device. The Compact Stress tool is designed to help identify bugs that may exist in your system image. The Compact Stress tool includes a Compact Stress Configuration Editor that you use to create test-case input for the Compact Stress tool.
The features of the Compact Stress tool are:
- Runs created stress-mix configurations
- Creates and edit stress-mix configurations
- Includes a stress-mix configuration editing tool
- Provides modular-level results
- Provides device-side log entries
- Diagnoses device and output .xml files
The general steps to complete a stress-test run are:
- In the Compact Stress Configuration Editor, select the test modules to add to your stress-test mix and create your configuration file. A stress-test mix is a collection of test modules that are run during the stress-test.
- Run the Compact Stress tool using your stress-test mix as input.
- View the results.
Use the Configuration Editor to Define Test Parameters
The Compact Stress tool uses a stress-mix file (also called a configuration file) as input when it executes a test pass. You use the Compact Stress Configuration Editor, which is installed by default with the Windows Embedded Compact Test Kit (CTK), to create or edit this stress-mix file by entering information about the stress testing you want to perform. The Configuration Editor gives you access to module templates and module types with which you can customize your test pass.
Create the Configuration File
The stress-mix configuration file contains the modules that the Compact Stress tool uses to perform a stress test on your device.
To create the stress-mix configuration file
In the Windows Embedded Compact Test Kit (CTK), on the Start Page and under Getting Started, click Connect to Device.
Note
Before you connect to a device from the Windows Embedded Compact Test Kit (CTK), the device must be running and must be attached to Platform Builder. For more information, see Connect to a Device.
In the Select a Device dialog box, choose your device, and click OK.
On the Tools menu, click Compact Stress Configuration Editor.
In the Compact Stress Configuration Editor window, from the File menu, click New Mix.
Navigate to the Configuration folder, and then to the Modules folder.
From Modules, add modules to a one of the listed module templates by right-clicking a module template, and then selecting Add Existing Module.
In the Choose Module Type dialog box, select the test module type that you want to add to your selected module template, and then click OK.
The following table describes the module types in the Choose Module Type dialog box that are available to add to your chosen template.
Module type Description Bulk
Standard stress module. Bulk modules run concurrently to stress-test the device.
Checkpoint
Pauses the run and executes at scheduled intervals to validate stability.
Resident
Runs concurrently with the bulk module without exiting.
Initiator
Starts at the beginning of a test run to initialize the environment.
Finisher
Starts at the end of a test run to clean up the environment.
In the Add Existing Module dialog box, select a module, and then click OK.
To save your new Compact Stress configuration file, in the Configuration Editor, on the File menu, click Save, and then save the file to a location of your choice.
Setup Options
The Setup folder in the Configuration Editor contains options that you use to change a particular module type.
You can make user-defined changes to the module types shown in the following table.
Module type | Option | Description |
---|---|---|
Bulk Manifest |
Concurrency |
Number of bulk modules to run concurrently. |
Module Duration |
Run duration for each bulk module. |
|
Module Duration Unit |
Unit of time used for the Module Duration option (for example, hours, minutes, or seconds). |
|
Module Weights |
Weight distribution for modules in the run. |
|
Chrono Manifest |
Checkpoints |
Checkpoints included in the run. |
Hang Duration |
Duration of time after which a module is considered to have stopped responding. |
|
Hang Duration Unit |
Unit of time used for the Hang Duration option (for example, hours, minutes, or seconds). |
|
Health Monitoring |
Break To Debugger |
Determines whether to break to the debugger when health assessment fails. |
Monitored Rates |
List of monitored rates and their associated thresholds. |
|
Monitored Threads |
List of monitored thread priorities and their associated starvation thresholds. |
|
Health Interval |
Health interval in minutes. Determines how often pass rates and storage capacity are assessed. |
|
Log Frequency |
Number of health intervals between each logged health report. A value of 0 means that only errors are reported. |
|
Enable Results Logging |
Determines whether to store results data to a file. |
|
Results Logging Path |
If enabled, determines the path to save the results log file to. The $(relfsd_root) variable can be used to reference the virtual release directory. |
|
Minimum Ram Kb |
Minimum allowed RAM amount in kilobytes. |
|
Minimum Storage Kb |
Minimum allowed storage amount in kilobytes. |
|
Logging Manifest |
Debugger Verbosity |
Filtering level to use for logger debug output. |
Desktop Logging Enabled |
Specifies whether to push device-side module output up to the desktop-side UI. |
|
Base Name |
Base name to use when generating log files. |
|
Unsupported Features Used |
Determines whether the loaded configuration file uses unsupported logging features. |
|
Termination Manifest |
Bulk Executions |
Minimum number of bulk executions. |
Checkpoint Executions |
Minimum number of checkpoint executions. |
|
Overall Iterations |
Minimum number of overall test iterations. |
|
Runtime |
Minimum runtime. |
|
Runtime Unit |
Unit of time used for the Runtime option (for example, hours, minutes, or seconds). |
|
Criteria |
Determines whether the run stops after any condition is met or only after all conditions are met. |
To specify options for module types
In the Compact Stress Configuration Editor, click the Setup folder, and then select a module type.
The available user-defined options appear in the viewing pane on the right. Highlight the option that you would like to change.
Edit the available value to a value of your choice.
When you have completed your changes, click the File menu, select Save, and then save the changed configuration file to a location of your choice.
Add a New Module
After you a select a module type and determine the options for the module type, you add the module to the list of stress-mix modules that are available in the Compact Stress tool.
To add a user-defined test module by using the Compact Stress Configuration Editor
In the Compact Stress Configuration Editor, on the Mix menu, click Add New Module.
In the Create New Module Template dialog box, select one of the following three options for creating your new template, and then click OK.
- Create a completely new module definition. Provides an empty module definition in which you create your customized module.
- Using an existing template as a starting point. Uses an existing module as a base for configuring your user-defined module.
- Overriding a master template locally. Provides options to override master template settings with local preferences.
For the selected option, provide the necessary module information for the required fields, and then save your selection.
Your newly created module is now available from within the Compact Stress Configuration Editor.
Run the Compact Stress Tool
In the Compact Stress tool, you use your configuration file as input to define the test modules that your stress mix will use during the test pass. You start the test pass as described in the following procedure.
To run the Compact Stress test pass
In the Windows Embedded Compact Test Kit (CTK), connect to a device if one is not already connected. For more information, see Connect to a Device.
On the Tools menu, click Compact Stress.
In the Options dialog box, select your connected device, and then click OK.
In the Remote Tools Shell window, highlight the Launch Pad option.
Other device and test information is available from the Remote Tools Shell window. The following table describes the information.
Section Description Device Log
Displays device-side entries if they were configured in the selected mix.
Run Monitor
Displays the Compact Stress tool status messages and module results.
Diagnostics
Reports device status and found issues in the Report Details window. You can also run diagnostics by selecting the RTFx Communications or CeDebugX7.0 Diagnoser option from the Provider column.
Launch Pad
Provides access to the stress-mix files and the options for running a stress-mix test.
In the Select the Compact Stress Mix to launch dialog box, browse to the mix that you want to start, and then click Start to begin the test run.
Note
You also have the option of starting the mix at a specified time. To start at a specified time, select the Start the run automatically (mix required) option, and then enter a start time in the provided time-selection box. The run will start at the time that you provide.
You can follow the status of the stress test by viewing the status messages that appear in the Compact Stress Messages window.
To stop the run at any time, click the Stop button. To restart the run from the beginning of your specified mix, click the Start button.
Note
There is no pause functionality. If you stop the run, clicking the Start button restarts the test from the beginning.
View the Compact Stress Tool Results
Throughout the testing process, you can view the Compact Stress tool test results in real time by using the Output File button, which is enabled when the stress test begins and remains enabled throughout the test. We recommend that you wait to open the test results file until the test run finishes. When the stress test finishes, a status message appears in the Compact Stress Messages window.
To view the Compact Stress results
In the Remote Tools Shell window, click the Output File button while a test is running.
A window, based on your default XML viewer, appears and presents a preview of the test output .xml file, which is labeled CompactStressresults_<DeviceName>_<Test Run Date and Time>.xml. This preview of the test results is a preview of the .xml output file that, when the test is finished, will contain the complete details of the test.
Note
The output file is constantly updated until the test pass ends. Thus, to be sure you are viewing the complete output, you should only open the actual output file after the test run has completed.
When the test run has completed, you can view the results by opening the output file CompactStressresults_<DeviceName>_<Test Run Date and Time>.xml by using the XML viewer of your choice. Typically, the completed output file is located at:
C:\Users\<UserName>\Documents\CompactStress.