-
Notifications
You must be signed in to change notification settings - Fork 44
Tests Execution
Install RedDeer UI feature from reddeer update site - see Getting Started - Installation.
RedDeer project can be run from Run As/Debug As menu -> and choose 'RedDeer Test' run configuration
RedDeer Test run configuration is a basic JUnit run configuration with one more tab - RedDeer - containing all RedDeer configuration properties.
In your project's pom.xml you need to define and configure tycho maven plugins. See RedDeer maven archetype or RedDeer tests pom.
All reddeer execution parameters starts with prefix 'rd.'.
Parameter | Default value | Type | Description | Source |
---|---|---|---|---|
rd.timePeriodFactor | 1.0 | float number | Increases or decreases wait time in wait conditions. | TimePeriod |
Parameter | Default value | Type | Description | Source |
---|---|---|---|---|
rd.logMessageFilter | ALL | pipe separated string | filters log messages according to settings. Possible values are none,trace,debug,error,warn,info,step,error,fatal,all . Values are not case sensitive. |
|
rd.logLevel | ALL | string | filters log messages according to settings. Possible values are none,trace,debug,error,warn,info,step,error,fatal,all . Values are not case sensitive. |
ExecutionSettings |
rd.pauseFailedTest | false | boolean | When test fails it pauses next execution until return is pressed. | ExecutionSettings |
rd.relativeScreenshotDirectory | not set | string | Captures screenshot of failed jobs into given directory. | CaptureScreenshot |
rd.captureScreenshot | not set | string | If set to "true" or null then screenshots are being captured. Otherwise screenshots are not taken. | CaptureScreenshot |
Parameter | Default value | Type | Description | Source |
---|---|---|---|---|
rd.config | undefined | string | Sets directory containing RedDeer requirement configuration(s). | |
rd.closeShells | true | boolean | Closes all shells, if not successful test fails. | CloseAllShellsExt |
rd.closeWelcomeScreen | true | boolean | Closes welcome screen if true. | CloseWelcomeScreenExt |
rd.disableMavenIndex | true | boolean | Disables downloading maven repository when set to true. | DoNotDownloadMavenIndexesExt |
rd.openAssociatedPerspective | never | string | Controls behavior of opening of associated perspective when project is created. | SetOpenAssociatedPerspectiveExt |
rd.maximizeWorkbench | true | boolean | Maximize workbench shell when test execution starts. | MaximizeAndFocusWorkbench |
rd.logCollectorEnabled | true | boolean | Collect Eclipse workbench log and process it for a specific test class and test methods. | MaximizeAndFocusWorkbench |
Parameter | Default value | Type | Description | Source |
---|---|---|---|---|
debugPort | not set | int | Allows remote debugging on given port. | Tycho |
Sometimes it's useful to set Eclipse plugin preference prior Eclipse start. For this purpose Eclipse command line argument -pluginCustomization can be used. This command line argument has to point to properties file within file system where are specified all Eclipse plugin preferences to be set for started Eclipse instance.
Usage:-pluginCustomization <properties file location>
For each preference to be set this properties file has to contain line like this:
<plugin id>/<setting>=<value>
For example this line will set preference PLUGINS_NOT_ACTIVATED_ON_STARTUP for plugin org.eclipse.ui.workbench to value org.eclipse.equinox.p2.ui.sdk.scheduler;org.eclipse.m2e.discovery
org.eclipse.ui.workbench/PLUGINS_NOT_ACTIVATED_ON_STARTUP=org.eclipse.equinox.p2.ui.sdk.scheduler;org.eclipse.m2e.discovery;
It will disable Eclipse to check for updates after Eclipse start up and therefore Updates available shell will not be displayed and will not steal focus from workbench shell
Just set Tycho parameter appArgLine
accordingly to provide -pluginCustomization
Eclipse command line argument properly set:
<build>
<plugins>
...
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<configuration>
...
<appArgLine>-pluginCustomization ${basedir}/pluginCustomization.ini</appArgLine>
...
</configuration>
...
</plugin>
...
</plugins>
</build>