LIVE Instructor-Led Courses
Dismiss

Test Driven Development in Java training course

Apply TDD To Java Development - Improve Agility & Predictability Of Your Development Lifecycle

JBI training course London UK

"Our tailored course provided a well rounded introduction and also covered some intermediate level topics that we needed to know. Clive gave us some best practice ideas and tips to take away. Fast paced but the instructor never lost any of the delegates"

Brian Leek, Data Analyst, May 2022

TAILOR-MADE
Enquire & get a quote
PUBLIC COURSES
Next on 4 Jul - see prices
JBI training course London UK

Course Overview

At the end of this training course, students should be able to:

  • Appreciate the benefits of a continuous and iterative approach to design and delivery
  • Recognise the purpose and practice of refactoring in keeping a system supple and adaptable
  • Know how to build up a set of unit tests in JUnit
  • Understand the consequences of dependency management on testing and code quality

1 . Agile Development Microprocess

  • Traditional versus agile development processes
  • Iterative and incremental development
  • Informal and continuous design
  • The role of refactoring
  • Refactoring versus other code changes
  • Extreme Programming
  • Test-Driven Development

2 . Testing in Principle

  • Traditional view and reality of testing
  • Driving development through testing
  • Testing early, often and automatically
  • Testing versus debugging
  • White-box versus black-box testing
  • Functional versus operational testing

3 . Basic Unit Testing in Practice

  • Test plans versus test code
  • Use of Assert
  • Testing at the interface
  • Testing the simplest things first
  • Testing incrementally
  • Testing correctness of failure

4 . Overview of JUnit

  • JUnit and the xUnit family
  • Test cases, test suites and test runners
  • Essential structure of the framework
  • Assertion methods
  • Testing correctness of exceptions
  • Defining common fixture code
  • JUnit pattern usage
  • Extensions to JUnit

5 . Test-Writing Techniques

  • Red, green, refactor
  • None to one to many
  • Faking it
  • Telling the truth
  • Isolated and short tests
  • Refactor common fixture code
  • Declare, prepare, assert
  • Test by method, state or scenario
  • Custom assertions
  • Compile-time constraints
  • Running all tests

6 . Common Refactorings

  • Renaming variables, methods, classes and packages
  • Restructuring class hierarchies by extracting interfaces, superclasses and subclasses
  • Partitioning classes by extracting classes and methods
  • Changing private representation

7 . Decoupling Techniques

  • Unmanaged dependencies
  • Test-driven decoupling
  • Layering
  • Reorganising packages
  • Eliminating cyclic dependencies
  • Mock objects
  • Eliminating Singletons, statics and other globals
  • Testing I/O
JBI training course London UK

Java developers looking to acquire TDD techniques

4.8 out of 5 average

"Our tailored course provided a well rounded introduction and also covered some intermediate level topics that we needed to know. Clive gave us some best practice ideas and tips to take away. Fast paced but the instructor never lost any of the delegates"

Brian Leek, Data Analyst, May 2022

JBI training course London UK
 
Top 20 "Pain Points" for Data Analysts
 

Problem 11 : You have a very complex Excel spreadsheet and you want to reproduce EXACTLY the same spreadsheet in Power BI
Solution: Power BI is not Excel, it works differently and it has different strengths. In order to tackle this issue the best way is going back to the source and try to...

All 20 points are in our latest Newsletter - Delivered directly to your inbox



CONTACT
+44 (0)20 8446 7555

enquiries@jbinternational.co.uk

SHARE

Corporate Policies     Terms & Conditions
JB International Training Ltd  -  Company number 08458005

Registered address Wohl Enterprise Hub 2B Redbourne Avenue London N3 2BS

POPULAR

Rust training course                                                                          React training course

Threat modelling training course   Python for data analysts training course

Power BI training course                                   Machine Learning training course

Spring Boot Microservices training course              Terraform training course

Kubernetes training course                                                            C++ training course

Power Automate training course                               Clean Code training course