Skip to content

Commit 3cb8d2d

Browse files
committed
Update readme file #567
1 parent 592ad78 commit 3cb8d2d

File tree

10 files changed

+547
-77
lines changed

10 files changed

+547
-77
lines changed

README.md

+127-32
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
# JBoss Tools Integration Stack Tests
22

3-
## Summary
3+
This repository contains test plugins for overall integration testing of JBoss Tools Integration Stack (JBTIS).
44

5-
JBoss Tools Integration Stack Tests contains test plugins for overall integration testing of JBoss Tools Integration Stack (JBTIS).
6-
7-
## Install
8-
9-
_JBoss Tools Integration Stack Tests_ is part of [JBoss Tools](http://jboss.org/tools) from
10-
which it can be [downloaded and installed](http://jboss.org/tools/download)
11-
on its own or together with the full JBoss Tools distribution.
5+
##### Table of Contents
6+
- [Get the code](#getthecode)
7+
- [Build the code](#buildthecode)
8+
- [Run tests from cmd](#runtestsfromcmd)
9+
- [Run tests from IDE](#runtestsfromide)
10+
- [List of components](#listofcomponents)
11+
- [How to contribute](#howtocontribute)
1212

13+
<a name="getthecode"/>
1314
## Get the code
1415

1516
The easiest way to get started with the code is to [create your own fork](http://help.github.com/forking/),
@@ -28,58 +29,152 @@ At any time, you can pull changes from the upstream and merge them onto your mas
2829
The general idea is to keep your 'master' branch in-sync with the
2930
'upstream/master'.
3031

31-
## Building JBoss Tools Integration Tests
32-
33-
To build _JBoss Tools Integration Stack Tests_ requires specific versions of Java and
34-
Maven. Also, there is some Maven setup. The [How to Build JBoss Tools with Maven 3](https://community.jboss.org/wiki/HowToBuildJBossToolsWithMaven3)
35-
document will guide you through that setup.
32+
<a name="buildthecode"/>
33+
## Build the code
34+
35+
To build _JBoss Tools Integration Stack Tests_ you need
36+
* JDK 1.8
37+
* Maven 3.0.5 or 3.1.1 (not higher!)
38+
39+
You also need to add the following lines into ~/.m2/settings.xml
40+
```
41+
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
42+
...
43+
<profiles>
44+
...
45+
<profile>
46+
<id>jboss-default</id>
47+
<repositories>
48+
<!-- To resolve parent artifact -->
49+
<repository>
50+
<id>jboss-public-repository-group</id>
51+
<name>JBoss Public Repository Group</name>
52+
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
53+
</repository>
54+
<repository>
55+
<id>jboss-snapshots-repository</id>
56+
<name>JBoss Snapshots Repository</name>
57+
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
58+
</repository>
59+
</repositories>
60+
61+
<pluginRepositories>
62+
<!-- To resolve parent artifact -->
63+
<pluginRepository>
64+
<id>jboss-public-repository-group</id>
65+
<name>JBoss Public Repository Group</name>
66+
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
67+
</pluginRepository>
68+
<pluginRepository>
69+
<id>jboss-snapshots-repository</id>
70+
<name>JBoss Snapshots Repository</name>
71+
<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
72+
</pluginRepository>
73+
</pluginRepositories>
74+
</profile>
75+
</profiles>
76+
77+
<activeProfiles>
78+
<activeProfile>jboss-default</activeProfile>
79+
...
80+
</activeProfiles>
81+
</settings>
82+
```
3683

3784
This command will run the build:
3885

39-
$ mvn clean verify
86+
$ mvn clean package -DskipTests -Dtycho.localArtifacts=ignore
87+
88+
**Note:** _Usage of -Dtycho.localArtifacts=ignore is needed if you have built some components locally (bpel, switchyard, reddeer, swtbot, ...)._
89+
90+
<a name="runtestsfromcmd"/>
91+
## Run tests from cmd
92+
93+
The test execution can be affected by mouse moving/clicking. That's why we recommend to run tests in another display (vnc, xephyr, ...).
94+
95+
To run all smoke tests
96+
97+
$ mvn clean verify -Dtest=SmokeTests
98+
99+
To run tests for a specific component
100+
101+
$ mvn clean verify -pl tests/org.jboss.tools.<component>.ui.bot.test -am -Dtest=SmokeTests
102+
103+
**Note:** _The deafult test is AllTests._
104+
105+
For running the tests against an existing instance of Eclipse or JBDS use the following command
106+
107+
$ mvn clean verify -Dtest.installBase=...
108+
109+
**Note:** _Some tests require a specific configuration (runtime, credentials, ...). Please see the appropriate readme file of a specific [component](#listofcomponents)._
110+
111+
To run a test with a configuration file use
112+
113+
$ mvn clean verify -Drd.config=...
114+
115+
<a name="runtestsfromide"/>
116+
## Run tests from IDE
117+
118+
The test execution can be affected by mouse moving/clicking. That's why we recommend to run tests in another display (vnc, xephyr, ...).
119+
120+
Prepare your environment as follows
40121

41-
If you just want to check if things compiles/builds you can run:
122+
1. Install JBDS 9 (Eclipse Mars for Java EE Developers) and JBDS-IS 9.x (JBTIS 4.3.x)
123+
2. Install RedDeer from http://download.jboss.org/jbosstools/updates/stable/mars/core/reddeer/1.0.0
124+
3. Install SWTBot API (except Nebula Gallery) from http://download.eclipse.org/technology/swtbot/releases/latest
125+
4. Install Tycho plugin from http://repo1.maven.org/maven2/.m2e/connectors/m2eclipse-tycho/0.8.0/N/LATEST
126+
5. Import JBTIS plugins as an existing maven project
127+
6. Each test plugin contains a launcher which is available via Run > Run Configurations...
128+
7. In Run Configuration you can set the display (tab Environment) and additional configurations (tab Arguments)
42129

43-
$ mvn clean verify -DskipTest=true
130+
**Note:** _Some tests require a specific configuration (runtime, credentials, ...). Please see the appropriate readme file of a specific [component](#listofcomponents)._
44131

45-
But *do not* push changes without having the new and existing unit tests pass!
132+
<a name="listofcomponents"/>
133+
## List of components
46134

47-
For running the tests against an existing instance of Eclipse or JBDS use the following
135+
- [BPEL](tests/org.jboss.tools.bpel.ui.bot.test/README.md)
136+
- [BPMN2](tests/org.jboss.tools.bpmn2.ui.bot.test/README.md)
137+
- [Drools](tests/org.jboss.tools.drools.ui.bot.test/README.md)
138+
- [ESB](tests/org.jboss.tools.esb.ui.bot.test/README.md)
139+
- [Fuse](tests/org.jboss.tools.fuse.ui.bot.test/README.md)
140+
- [jBPM3](tests/org.jboss.tools.jbpm.ui.bot.test/README.md)
141+
- [ModeShape](tests/org.jboss.tools.modeshape.ui.bot.test/README.md)
142+
- [SwitchYard](tests/org.jboss.tools.switchyard.ui.bot.test/README.md)
143+
- [Teiid Designer](tests/org.jboss.tools.teiid.ui.bot.test/README.md)
48144

49-
$ mvn clean verify -Dtest.installPath=...
50-
51-
## Contribute fixes and features
145+
<a name="howtocontribute"/>
146+
## How to contribute
52147

53148
_JBoss Tools Integration Stack Tests_ is open source, and we welcome anybody that wants to
54149
participate and contribute!
55150

56151
If you want to fix a bug or make any changes, please do following:
57152

58-
1. log an issue describing the bug or new feature here on [GitHub](https://github.com/jbosstools/jbosstools-integration-stack-tests/issues/new)
59-
2. update your local master branch
153+
1. Log an issue describing the bug or new feature here on [GitHub](https://github.com/jbosstools/jbosstools-integration-stack-tests/issues/new)
154+
2. Update your local master branch
60155

61156
```
62157
$ git checkout master # switches to the 'master' branch
63158
$ git pull upstream master # fetches all 'upstream' changes and merges 'upstream/master'
64159
onto your 'master' branch
65160
```
66161

67-
3. make the changes on a topic branch named with issue number. For example, this command creates a branch for the *#1234* issue:
162+
3. Make the changes on a topic branch named with issue number. For example, this command creates a branch for the *#1234* issue:
68163

69164
```
70165
$ git checkout -b JBTISTEST-1234
71166
```
72167

73-
4. after you're happy with your changes and a full build (with unit tests) runs successfully, commit your changes on your topic branch (with good comments):
168+
4. After you're happy with your changes and a full build (with unit tests) runs successfully, commit your changes on your topic branch (with good comments):
74169

75170
```
76171
$ git add <file> # adds new/changed files
77172
$ git commit # makes a commit from all added files
78173
```
79174

80-
**Note:** We recommend making a comment of the commit with name of the issue on GitHub plus *'#1234' (issue number)*. The issue number in the comment cause that your commit is visible in issue's comments.
175+
**Note:** _We recommend making a comment of the commit with name of the issue on GitHub plus *'#1234' (issue number)*. The issue number in the comment cause that your commit is visible in issue's comments._
81176

82-
5. check for any recent changes that were made in the official repository:
177+
5. Check for any recent changes that were made in the official repository:
83178

84179
```
85180
$ git checkout master # switches to the 'master' branch
@@ -90,22 +185,22 @@ If you want to fix a bug or make any changes, please do following:
90185
(i.e., the latest from master will be the new base for your changes)
91186
```
92187

93-
**Note:** If the pull grabbed a lot of changes, you should rerun your build with tests enabled to make sure your changes are still good.
188+
**Note:** _If the pull grabbed a lot of changes, you should rerun your build with tests enabled to make sure your changes are still good._
94189

95-
6. push your topic branch and its changes into your public fork repository:
190+
6. Push your topic branch and its changes into your public fork repository:
96191

97192
```
98193
$ git push origin JBTISTEST-1234 # pushes your topic branch into your public fork of JBTIS Tests
99194
```
100195

101-
7. link your topic branch with the created issue:
196+
7. Link your topic branch with the created issue:
102197
* clone this repository:
103198

104199
```
105200
$ git clone https://github.com/apodhrad/simple-github-client
106201
```
107202

108-
**Note:** It contains only one Groovy script that links your topic branch on GitHub with the corresponding issue in JBoss Tools Integration Stack Tests repository.
203+
**Note:** _It contains only one Groovy script that links your topic branch on GitHub with the corresponding issue in JBoss Tools Integration Stack Tests repository._
109204

110205
* run the Groovy script
111206

@@ -116,4 +211,4 @@ If you want to fix a bug or make any changes, please do following:
116211
issue: 1234 # number of the issue
117212
```
118213

119-
8. check that your issue on GitHub was moved to [Pull Requests](https://github.com/jbosstools/jbosstools-integration-stack-tests/pulls). Then we can review the proposed changes, comment on them, discuss them with you, and if everything is good merge the changes right into the official repository
214+
8. Check that your issue on GitHub was moved to [Pull Requests](https://github.com/jbosstools/jbosstools-integration-stack-tests/pulls). Then we can review the proposed changes, comment on them, discuss them with you, and if everything is good merge the changes right into the official repository

tests/README.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# List of components
2+
3+
- [BPEL](org.jboss.tools.bpel.ui.bot.test/README.md)
4+
- [BPMN2](org.jboss.tools.bpmn2.ui.bot.test/README.md)
5+
- [Drools](org.jboss.tools.drools.ui.bot.test/README.md)
6+
- [ESB](org.jboss.tools.esb.ui.bot.test/README.md)
7+
- [Fuse](org.jboss.tools.fuse.ui.bot.test/README.md)
8+
- [jBPM3](org.jboss.tools.jbpm.ui.bot.test/README.md)
9+
- [ModeShape](org.jboss.tools.modeshape.ui.bot.test/README.md)
10+
- [SwitchYard](org.jboss.tools.switchyard.ui.bot.test/README.md)
11+
- [Teiid Designer](org.jboss.tools.teiid.ui.bot.test/README.md)

tests/org.jboss.tools.bpel.ui.bot.test/README.md

+32-13
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,45 @@
22

33
## How to run
44

5-
At first, you have to install org.jboss.tools.bpel.reddeer
5+
At first, please read a general documentation about [running bot tests](../../README.md).
66

7-
$ mvn clean install
7+
To run the tests
88

9-
then you can run the tests as follows
9+
$ mvn clean verify -pl tests/org.jboss.tools.bpel.ui.bot.test -am -Dtest=SmokeTests
1010

11-
$ mvn clean verify [-B -U -fae]
11+
To run the tests with a configuration
1212

13-
If you want to run tests which require a server
13+
$ mvn clean verify -pl tests/org.jboss.tools.bpel.ui.bot.test -am -Drd.config=...
1414

15-
$ mvn clean verify [-B -U -fae] -Pas51
15+
The configuration file must follow the [SOA XSD schema](http://www.jboss.org/schema/reddeer/3rdparty/SOARequirements.xsd).
1616

17-
We recommend to run the tests on another display (Xephyr, Vnc, ...)
17+
Example:
18+
```
19+
<?xml version="1.0" encoding="UTF-8"?>
20+
<testrun
21+
xmlns="http://www.jboss.org/NS/Req"
22+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23+
xmlns:server="http://www.jboss.org/NS/SOAReq"
24+
xmlns:runtime="http://www.jboss.org/NS/SOAReq"
25+
xsi:schemaLocation="http://www.jboss.org/NS/Req http://www.jboss.org/schema/reddeer/RedDeerSchema.xsd
26+
http://www.jboss.org/NS/SOAReq http://www.jboss.org/schema/reddeer/3rdparty/SOARequirements.xsd">
1827
19-
In case you want to build it whithout running the tests
28+
<requirements>
29+
<server:server-requirement name="SOA-5.3.1.GA">
30+
<server:eap version="5.x">
31+
<server:home>/home/apodhrad/Projects/server-installer/soa-5.3.1.GA/target/jboss-soa-p-5/jboss-as</server:home>
32+
<server:jre>/opt/java/jdk1.7.0_79</server:jre>
33+
</server:eap>
34+
</server:server-requirement>
35+
</requirements>
2036
21-
$ mvn clean install -DskipTests
37+
</testrun>
38+
```
2239

23-
## Importing into Eclipse IDE
40+
To run the tests from IDE import the following projects as an existing maven project
41+
- org.jboss.tools.common.reddeer
42+
- org.jboss.tools.runtime.reddeer
43+
- org.jboss.tools.bpel.reddeer
44+
- org.jboss.tools.bpel.ui.bot.test
2445

25-
For importing the project into Eclipse IDE you need:
26-
27-
Eclipse Kepler, SWTBot 2.1.1, Red Deer 0.4.0
46+
Then, open **Run > Run Configurations...** and find the category **RedDeer Test**. Switch to the tab **Arguments** and add a VM argument **-Drd.config=...** if needed.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# BPMN2 Bot Tests
2+
3+
## How to run
4+
5+
At first, please read a general documentation about [running bot tests](../../README.md).
6+
7+
To run the tests
8+
9+
$ mvn clean verify -pl tests/org.jboss.tools.bpmn2.ui.bot.test -am -Dtest=SmokeTests
10+
11+
You can also specify the jBPM version by
12+
13+
$ mvn clean verify -pl tests/org.jboss.tools.bpmn2.ui.bot.test -am -Ddroolsjbpm.version=6.3.0.Final
14+
15+
Before
16+
17+
To run the tests from IDE you have to build **org.jboss.tools.bpmn2.ui.bot.test** from cmd
18+
19+
$ mvn clean package -pl tests/org.jboss.tools.bpmn2.ui.bot.test -am -DskipTests
20+
21+
which copies all needed libraries to /lib folder. Now, you can import the following projects as an existing maven project
22+
- org.jboss.tools.bpmn2.reddeer
23+
- org.jboss.tools.bpmn2.ui.bot.test
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2+
<launchConfiguration type="org.jboss.reddeer.eclipse.ui.launcher.JunitLaunchConfig">
3+
<booleanAttribute key="append.args" value="true"/>
4+
<booleanAttribute key="askclear" value="false"/>
5+
<booleanAttribute key="automaticAdd" value="true"/>
6+
<booleanAttribute key="automaticValidate" value="false"/>
7+
<stringAttribute key="bootstrap" value=""/>
8+
<stringAttribute key="checked" value="[NONE]"/>
9+
<booleanAttribute key="clearConfig" value="true"/>
10+
<booleanAttribute key="clearws" value="true"/>
11+
<booleanAttribute key="clearwslog" value="false"/>
12+
<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
13+
<booleanAttribute key="default" value="true"/>
14+
<booleanAttribute key="includeOptional" value="true"/>
15+
<stringAttribute key="location" value="${workspace_loc}/../junit-workspace"/>
16+
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
17+
<listEntry value="/org.jboss.tools.bpmn2.ui.bot.test/src/org/jboss/tools/bpmn2/ui/bot/test/SmokeTests.java"/>
18+
</listAttribute>
19+
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
20+
<listEntry value="1"/>
21+
</listAttribute>
22+
<mapAttribute key="org.eclipse.debug.core.environmentVariables">
23+
<mapEntry key="DISPLAY" value=":2"/>
24+
</mapAttribute>
25+
<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
26+
<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
27+
<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
28+
<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
29+
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
30+
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
31+
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.jboss.tools.bpmn2.ui.bot.test.SmokeTests"/>
32+
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -eclipse.password resources/security/password -pluginCustomization resources/settings/plugin_customization.ini"/>
33+
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.jboss.tools.bpmn2.ui.bot.test"/>
34+
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
35+
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=384m -Dusage_reporting_enabled=false"/>
36+
<stringAttribute key="pde.version" value="3.3"/>
37+
<stringAttribute key="product" value="com.jboss.jbds.product.product"/>
38+
<stringAttribute key="rd.launch.property.logDebug" value="true"/>
39+
<stringAttribute key="rd.launch.property.rd.captureScreenshot" value="true"/>
40+
<stringAttribute key="rd.launch.property.rd.closeShells" value="true"/>
41+
<stringAttribute key="rd.launch.property.rd.closeWelcomeScreen" value="true"/>
42+
<stringAttribute key="rd.launch.property.rd.disableMavenIndex" value="true"/>
43+
<stringAttribute key="rd.launch.property.rd.logLevel" value="ALL"/>
44+
<stringAttribute key="rd.launch.property.rd.logMessageFilter" value="ALL"/>
45+
<stringAttribute key="rd.launch.property.rd.openAssociatedPerspective" value="never"/>
46+
<stringAttribute key="rd.launch.property.rd.pauseFailedTest" value="false"/>
47+
<stringAttribute key="rd.launch.property.rd.recordScreenCast" value="false"/>
48+
<stringAttribute key="rd.launch.property.rd.timePeriodFactor" value="1.0"/>
49+
<stringAttribute key="rd.launch.property.reddeer.captureScreenshot" value="true"/>
50+
<stringAttribute key="rd.launch.property.reddeer.close.shells" value="true"/>
51+
<stringAttribute key="rd.launch.property.reddeer.close.welcome.screen" value="true"/>
52+
<stringAttribute key="rd.launch.property.reddeer.disable.maven.download.repo.index.on.startup" value="true"/>
53+
<stringAttribute key="rd.launch.property.reddeer.logLevel" value="ALL"/>
54+
<stringAttribute key="rd.launch.property.reddeer.logMessageFilter" value="ALL"/>
55+
<stringAttribute key="rd.launch.property.reddeer.pauseFailedTest" value="false"/>
56+
<stringAttribute key="rd.launch.property.reddeer.recordScreenCast" value="false"/>
57+
<booleanAttribute key="show_selected_only" value="false"/>
58+
<stringAttribute key="templateConfig" value="${target_home}/configuration/config.ini"/>
59+
<booleanAttribute key="tracing" value="false"/>
60+
<booleanAttribute key="useCustomFeatures" value="false"/>
61+
<booleanAttribute key="useDefaultConfig" value="true"/>
62+
<booleanAttribute key="useDefaultConfigArea" value="false"/>
63+
<booleanAttribute key="useProduct" value="true"/>
64+
</launchConfiguration>

0 commit comments

Comments
 (0)