What every java developer must know about software testing
What you'll learn
- Explain the difference between unit-, integration-, system-, ui-, acceptance-, regression- and not-functional tests.
- Explain the concepts test/behavioral driven developement (TDD/BDD).
- Write test driven unit and integration tests using JUnit/TestNG and use Hamcrest/AssertJ for better assertions
- Use JMockit/Mockito to mock context irrelevant dependencies
- Write Web-UI system tests using Selenium/Selenide
- Write behavioral driven acceptance tests using Cucumber/JBehave
- Monitor test coverage using Jacoco/EclEmma
- Persuasively discuss and explain why software testing is indispensable in the development lifecycle
Requirements
- Basic knowledge of java programming is required
- Basic knowledge of maven is helpfull
- Familiarity with a Java-IDE like Eclipse, IntelliJ, NetBeans or whatever you choose for the labs
- PC, MAC or Linux Machine with an Internet connection
Description
In this course you will implement the game Tic-Tac-Toe from scratch in java
You will ensure high quality of the game implementation using:
- Test Driven Development (TDD)
- Behavior Driven Development (BDD)
- Unit testing
- Integration testing
- Smoke testing
- System testing
- End-To-End testing
- Regression testing
- Acceptance testing
- Non functional tests
You will become Hands-on experience with the following testing frameworks:
- Junit
- Hamcrest
- Mockito
- Selenide
- Cucumber
- JaCoCo
You will become Hands-on experience with alternative frameworks:
- TestNG
- AssertJ
- Jmockit
- Selenium
- Jbehave
- EclEmma
You will learn to persuasively discuss and explain the common software testing concepts and why software testing is necessary.
Who this course is for:
- Java developer or architect who cares about assuring software quality and minimizing risks
Featured review
Instructor
Hamadi Sy has a master’s degree in Distributed Computing Systems Engineering from the brunel university london. He is a senior software architect, designing and implementing software systems since 2008. He is specialized in JavaEE and Spring. He is a big fan of clean code and high quality software. He is a software testing and software architecture trainer. Feel free to contact him also in french or german.