Training Capstone Courseware

Training goals

code: CC-191

This course introduces the experienced Java programmer to testing and test-driven development practices using JUnit. We work from the basics of JUnit as a tool, to best practices for writing effective and maintainable tests. The course is not strictly a TDD course, but we introduce TDD and take students through an illustrative case study. We discuss the importance of mocking and explore testing techniques using Mockito. Finally, we discuss concerns and strategies for testing enterprise components in the Java EE context.

Learning Objectives

  • Build unit tests for Java classes using JUnit.
  • Write effective tests, and design classes for testability.
  • Understand test-driven development (TDD) and use dynamic mocking to support isolated testing.
  • Develop effective testing strategies for Java-EE components.

Conspect Show list

  1. Automated Unit Testing with JUnit
    • Automated Testing
    • JUnit and Related Tools
    • The @Test Annotation
    • The Assert Class Utility
    • Test Runners
    • Lifecycle Methods
    • Expecting Exceptions
    • Test Suites
  2. Writing Tests
    • Test Granularity
    • Reusing Test Logic
    • Recording and Comparing Output
    • Test Isolation
    • Controlling the Test Environment
    • Managing Dependencies
    • Non-Invasive Testing
    • Designing for Testability
    • Factories
    • Testing and Threads
  3. Test-Driven Development
    • Writing the Test First
    • The TDD Cycle
    • Advantages of TDD
    • Resistance to TDD
    • A Case Study
  4. Mocking
    • Mock Objects in Testing
    • Mock Objects in Test-Driven Development
    • Static vs. Dynamic Mocks
    • Stubbing
    • Verifying
    • Matching and Capturing
    • Using a Spy
    • Partial Mocking
  5. Testing Enterprise Components
    • Challenges in Java-EE Testing
    • The Java Naming and Directory Interface
    • Mocking JNDI
    • Java-EE Dependency Injection
    • Testing Persistence Components
    • Mocking JDBC and JPA
    • Test Databases
    • Auto-Rollback
    • Verifying Transactionality and Cleanup
    • Web Components
    • Mocking the Web Container
    • Asynchronous Messaging
    • Mocking the JMS Session
    • Web-Services APIs: JAX-WS and JAX-RS
Download conspect training as PDF

Additional information

Prerequisites

Solid Java programming experience is essential -- especially object-oriented use of the language. Language features and techniques that are integral to some lab exercises include interfaces and abstract classes, threading, generics and collections, and recursive methods. Course 103 Java Programming, is excellent preparation.

Difficulty level
Duration 2 days
Certificate

The participants will obtain certificates signed by Capstone Courseware.

Trainer

Authorized Capstone Courseware Trainer.

Other training Capstone Courseware | Java Programming

Training thematically related

Java

Programming

Contact form

Please fill form below to obtain more info about this training.







* Fields marked with (*) are required !!!

Information on data processing by Compendium - Centrum Edukacyjne Spółka z o.o.

PRICE 500 EUR

FORM OF TRAINING ?

 

TRAINING MATERIALS ?

 

SELECT TRAINING DATE

    • General information
    • Guaranteed dates
    • Last minute (-10%)
    • Language of the training
    • English
Book a training appointment
close

Traditional training

Sessions organised at Compendium CE are usually held in our locations in Kraków and Warsaw, but also in venues designated by the client. The group participating in training meets at a specific place and specific time with a coach and actively participates in laboratory sessions.

Dlearning training

You may participate from at any place in the world. It is sufficient to have a computer (or, actually a tablet, or smartphone) connected to the Internet. Compendium CE provides each Distance Learning training participant with adequate software enabling connection to the Data Center. For more information, please visit dlearning.eu site

close

Paper materials

Traditional materials: The price includes standard materials issued in the form of paper books, printed or other, depending on the arrangements with the manufacturer.

Electronic materials

Electronic materials: These are electronic training materials that are available to you based on your specific application: Skillpipe, eVantage, etc., or as PDF documents.

Ctab materials

Ctab materials: the price includes ctab tablet and electronic training materials or traditional training materials and supplies provided electronically according to manufacturer's specifications (in PDF or EPUB form). The materials provided are adapted for display on ctab tablets. For more information, check out the ctab website.

Upcoming Capstone Courseware training

Training schedule
Capstone Courseware