Documented usage of annotations

This commit is contained in:
Kai Zimmermann
2016-02-24 10:20:33 +01:00
parent 82121766d1
commit e1a48c9b7d

View File

@@ -4,7 +4,9 @@
Please read this if you intend to contribute to the project.
## Code Conventions
## Conventions
### Code Style
* Java files:
* we follow the standard eclipse IDE (built in) code formatter with the following changes:
@@ -19,6 +21,32 @@ Please read this if you intend to contribute to the project.
* Sonarqube:
* Our rule set is defined [here](http://sonar.eu-gb.mybluemix.net)
### Test documentation
Please documented the test cases that you contribute by means of [Allure](http://allure.qatools.ru) annotations and proper test method naming.
All test classes are documented with [Allure's](https://github.com/allure-framework/allure-core/wiki/Features-and-Stories) **@Features** and **@Stories** annotations in the following format:
```
@Features("TEST_TYPE - HAWKBIT_COMPONENT")
@Stories("Test class description")
```
Test types are:
* Unit Tests - for single units tests with a mocked environment
* Component Tests - for complete components including lower layers, e.g. Spring MVC test on rest API including repository and database.
* Integration Tests - including clients, e.g. Selenium UI tests with various browsers.
* System Tests - on target environments, e.g. Cloud Foundry.
Examples for hawkBit components:
* Management API
* Direct Device Integration API
* Device Management Federation API
* Management UI
* Repository
* Security
In addition all test method's name describes in **camel case** what the test is all about and has a long description aith Allures **@Description** annotation.
## Legal considerations for your contribution
The following steps are necessary to comply with the Eclipse Foundation's IP policy.