What every java developer must know about software testing

Concepts & frameworks QA,TDD,BDD,Junit,TestNG,Hamcrest,AssertJ,Mockito,Jmockit,Selenide,Selenium,Cucumber,Jbehave,JaCoCo

Concepts & frameworks QA,TDD,BDD,Junit,TestNG,Hamcrest,AssertJ,Mockito,Jmockit,Selenide,Selenium,Cucumber,Jbehave,JaCoCo

Overview

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

Java developer or architect who cares about assuring software quality and minimizing risks

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

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.

Hamadi Sy

Hamadi Sy has a master’s degree in Distributed Computing Systems Engineering from the brunel university london. He is a senior software architect and trainer, designing and implementing software systems since 2008. He is a big fan of clean code and high quality software. Feel free to contact him in French or German as well.

Free Enroll