| ---------------------------------------- |
| Steps for running EJB Development Tests |
| ---------------------------------------- |
| |
| 1. Set the following variables: |
| |
| APS_HOME to the location of where v2/appserv-tests are checked out |
| S1AS_HOME to <GlassFish install location>/glassfish7/glassfish |
| |
| 2. Make sure ant is in your path. |
| |
| Also, in some cases the ant test clients run out of memory during the test run. |
| If you see this problem, add -Xmx999m to the command that starts the ant java vm, e.g : |
| |
| % cat `which ant` |
| |
| |
| (... towards bottom of ant script) |
| |
| "$JAVACMD" -Xmx999m -classpath "$LOCALCLASSPATH" -Dant.home="${ANT_HOME}" $ANT_OPTS org.apache.tools.ant.Main $ANT_ARGS "$@" |
| |
| 3. Install GlassFish by unzipping glassfish.zip for running the tests against Java EE Full Profile, or web.zip for running the tests against the Web Profile. |
| |
| 4. Run the tests. |
| |
| 4.1 The "all" target starts the server and the database, runs the tests, and then stops the server and database. |
| |
| % ant all |
| |
| 4.2 The "lite" target starts the server and the database, runs the tests that do not require any EJB container features beyond EJB Lite, and then stops the server and database. |
| |
| % ant all |
| |
| 5. The results should look something like this : |
| |
| [exec] input file=/Volumes/Fantom1/work/v2/appserv-tests/test_resultsValid.xml |
| [exec] |
| [exec] ************************ |
| [exec] PASSED= <total> |
| [exec] ------------ ========= |
| [exec] FAILED= 0 |
| [exec] ------------ ========= |
| [exec] DID NOT RUN= 0 |
| [exec] ------------ ========= |
| [exec] Total Expected=<total> |
| [exec] ************************ |
| [exec] |
| |
| ( <total> is equal to the TOTAL value in the result_count.sh file. We keep this total count up to date based on the total number of test framework PASS assertions in the set of tests run by the ant all target ) |
| |
| |
| 6. To start the server and Derby database, and to cleanup resultset, do |
| |
| % ant setup |
| |
| 7. To stop the server and Derby database, and to report the result, do |
| |
| % ant unsetup |
| |
| Note: partial result will show <total>-<tests-executed> as a DID NOT RUN number |
| |
| 8. Keeping the score... |
| |
| 8.1 If an assertion is added to a new test, and the status is not populated from this assertion, no extra change is necessary. |
| |
| 8.2 If a status of the new assertion is reported explicitly via call: |
| |
| stat.addStatus("XYZ", stat.PASS); |
| |
| the resultCount.sh total need to be incremented by one. |
| |
| NOTE: the status counter prefers that each status has its own name, so if "XYZ" had been already used, find a different name. If the same test is executed more than once, add some modifier to the name to make it unique. |
| |
| 8.3 If a new test suite is added, the resultCount.sh should be incremented by the number of total tests reported by the suite. See the note above for the test reporting rules. |
| |
| 8.4 If a test needs to be executed against web.zip, it should be referenced from the "test-lite" target, and its count added to the TOTAL_LITE. Otherwise it should be added to the "test-all" target and TOTAL count be updated. |
| |
| 9. Clustered tests |
| |
| Clustered tests are not part of this suite and are located under ee/ directory. |
| |
| Only ee/timer tests are automated in their own suite at this time. |