⚠️ TODO this tutorial is under development, don't use it at the moment
This repo is just a collection of best practices and tools with simple example snippets for the development of Java Applications. It starts with the Teststrategy since often discussion are fought about tools without understanding the context and because more testing does not mean better testing.
Before selecting the "right" tools, I recomment to setup a strategy. A strategy starts with the risks and requirements. The second step is to select the most effective approaches to cover these.
In a perfect world you add them into one pipeline.
The lack of testsystems and long running test times often forces you to a pragmatic tradeoff.
Some of the well known tools (in the java world) are:
- Mockito
- Spock
- Restassured
- Hamcrest
- Junit
- TestNG
There are of course more tools.
Apart from the functional aspects also non-functional requirements have to be taken into consideration:
- Performance tests
- Security tests
- Failover tests
- Code quality checks
I will showcase two tools to executre perfomance tests
- Gatling
- Jmeter
Also in this field there are of course more tools.
I will showcase
- OWASP’s Zed Attack Proxy
And there are of course more tools.
I will showcase one tool:
- findbugs
- sonar
Again there are of course more tools.
For Failover tests, let us concentrate on some tools from the Simian Army (https://github.com/Netflix/SimianArmy)
There are of course more tools.