Skip to content

Commit

Permalink
Adding TESTING.md (apache#2490)
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmellawatt authored Sep 19, 2018
1 parent aa15c2c commit b99cfda
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 0 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,10 @@ Apache Geode includes the following features:
See [BUILDING.md](https://github.com/apache/geode/blob/develop/BUILDING.md) for
instructions on how to build the project.

## <a name="testing"></a>Running Tests
See [TESTING.md](https://github.com/apache/geode/blob/develop/TESTING.md) for
instructions on how to run tests.

## <a name="started"></a>Geode in 5 minutes

Geode requires installation of JDK version 1.8. After installing Apache Geode,
Expand Down
38 changes: 38 additions & 0 deletions TESTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Running Tests

## Prerequisites
Before running tests, ensure all steps in the [BUILDING.md](https://github.com/apache/geode/blob/develop/BUILDING.md) have been performed.

## Running Tests By Type
Tests are broken up into five types - unit, integration, distributed, acceptance, and upgrade. They can be executed using the following commands from the Geode repository root directory:
* Unit tests: generally test a single class and run quickly
`./gradlew test`
* Integration tests: involve inter-operation of components or subsystems
`./gradlew integrationTest`
* Distributed tests: involve multiple members of a distributed system.
`./gradlew distributedTest`
* Acceptance tests: test Geode from end user perspective
`./gradlew acceptanceTest`
* Upgrade tests: test compatibility between versions of Geode and rolling upgrades
`./gradlew upgradeTest`

## Running Individual Tests
To run an individual test, you can either
1. Run the test in your [IDE](https://github.com/apache/geode/blob/develop/BUILDING.md#setting-up-intellij)
2. Run the from terminal by specifying the sub-project and test type:
`./gradlew project:testType --tests testName`
For example:
`./gradlew geode-core:test --tests ArrayUtilsTest`
`./gradlew geode-core:distributedTest --tests ConnectionPoolDUnitTest`

## Running Tests By Category
To run a specific category of tests (eg: GfshTest):
`./gradlew project:testType -PtestCategory=fullyQualifiedTestClassName`
For example:
`./gradlew geode-core:distributedTest -PtestCategory=org.apache.geode.test.junit.categories.GfshTest`

Available categories can be found in the `geode-junit/src/main/java/org/apache/geode/test/junit/categories` in the Geode repository.

## Viewing Test Results
Test results can be viewed by navigating to
`build/reports/combined` in the Geode repository, then opening the `index.html` file in your browser.

0 comments on commit b99cfda

Please sign in to comment.