This is an automated email from the ASF dual-hosted git repository.

moleske pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode-native.git


The following commit(s) were added to refs/heads/develop by this push:
     new e167371  GEODE-7419: Complete info about geode-native integration 
tests (#544)
e167371 is described below

commit e167371c5862fa0afcb1fb6302723709bb6b24c8
Author: Alberto Bustamante Reyes <[email protected]>
AuthorDate: Sat Nov 9 01:32:41 2019 +0100

    GEODE-7419: Complete info about geode-native integration tests (#544)
---
 CONTRIBUTING.md | 44 ++++++++++++++++++++++++++------------------
 1 file changed, 26 insertions(+), 18 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9510ca9..a1a6831 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -6,12 +6,13 @@ see [BUILDING.md](BUILDING.md)
 
 ## Next steps
 * Make your changes/add your feature/fix a bug.
-* Test your feature branch changes
-* Check your formatting
-* Submit a pull request
+* Test your feature branch changes.
+* Check your formatting.
+* Submit a pull request.
 
 ## Testing
-Before submitting a pull request the unit and integration tests must all pass. 
We are using CTest, (Please see [the CTest 
documentation](https://cmake.org/Wiki/CMake/Testing_With_CTest) for further 
information.)
+Before submitting a pull request the unit and integration tests must all pass. 
We are using CTest for running tests (please see [the CTest 
documentation](https://cmake.org/Wiki/CMake/Testing_With_CTest) for further 
information) and [Google Test](https://github.com/google/googletest) as testing 
framework.
+
 ### Running unit tests
 ```bash
 $ cd <clone>
@@ -20,35 +21,42 @@ $ cd cppcache/test/<Debug|Release|if needed>
 $ ./apache-geode_unittests
 ```
 
-### Running old integration tests
-```bash
-$ cd <clone>
-$ cd build
-$ cmake --build . --target run-integration-tests
-```
+### Running integration tests
+There are two test suites of integration tests based on different testing 
frameworks. The old integration tests (stored in 
`geode-native/cppcache/integration-test`) are based on a custom testing 
framework, and the newer ones (stored in 
`geode-native/cppcache/integration/test`) are based on [Google 
Test](https://github.com/google/googletest).
+
+Old integration tests are deprecated. If your changes include the 
implementation of new integration test/s to be verified, they should be written 
using Google Test. If your change implies a significant change in one or more 
old test cases, you should create the equivalent test case/s using Google Test 
to substitute the old one/s instead of adapting them.
 
-Which is equivalent to running ctest directly:
+Both integration test suites can be executed together using CTest.
 
+#### Running old integration test suite
 ```bash
 $ cd build/cppcache/integration-test
-$ ctest --timeout 2000 -L STABLE -C <Debug|Release> -R . -j1
+$ ctest --timeout 2000 -L STABLE -C <Debug|Release> -j1
 ```
-This will take ~ 2 hours, YMMV... you can up the jobs to 4 and run in 
parallel, but you may end up with test failures that will need to be re-run 
sequentially.  Like so:
+Execution will take 2 hours approximately. It is possible to increase the 
number of jobs changing the value of `-j` parameter (up to `4`) for running 
tests in parallel, although it may end up with failed tests that will need to 
be re-run sequentially. Standalone tests can also be run as follows:
 
 ```bash
 $ cd build/cppcache/integration-test
 $ ctest -R <test_name> -C <Debug|Release>
 ```
+For example: `$ ctest --timeout 2000 -L STABLE -C Release -R testCacheless -j1`
+
 .NET integration tests can be executed similarly from 
`build/clicache/integration-test`.
 
-### Running new integration tests
+#### Running Google Test integration test suite
 ```bash
 $ cd <clone>
-$ cd build
-$ cd cppcache/integration/test
-$ ./cpp-integration-test [<options>]
+$ cd build/cppcache/integration/test
+$ ctest -j1
+```
+It is possible to increase the number of jobs changing the value of `-j` 
parameter for running tests in parallel, although it may end up with failed 
tests that will need to be re-run sequentially. Standalone tests can also be 
run as follows:
+
+```bash
+$ cd <clone>
+$ cd build/cppcache/integration/test
+$ ctest -R <test_name> -j1
 ```
-Note that <options> are gtest options that may be passed to the test 
executable, like for example the test cases to be run. Use --help to get all 
the available options.
+For example: `$ ctest -R AuthInitializeTest.putGetWithBasicAuth -j1`
 
 
 ## Style

Reply via email to