Goals
- Mastering test-driven development
Program
Software quality
metrics Testing process in the life cycle of a project, types, contributions
XP practices (eXtreme Programming), Test Driven Development (TDD) and styles
Testing in an agile project management
Code refactoring
Fixtures, Qualities a test code Test
coverage
Tools
Workshop: writing tests in a project
Interest of unit tests
Framework xUnit, Java implementation: jUnit
Principle of assertions
Test cases, Test suite
Alternatives to jUnit (TestNG)
Management of unit tests in Ant / Maven scripts
Workshop: implementation of unit tests with jUnit, launch with Eclipse / from an Ant or Maven script
Maven: presentation, history
Functions: build, dependency management, tests, documentation, link with tools, …
Maven vs build tools
Project description: POM (Project Object Model)
Super POM, Inheritance of POMs
Multi-module project
Local repository and remote repository
Maven and IDEs: Eclipse, Netbeans, …
Workshop: Maven installation and repositories configurations
Structure of a project or of a module
Project models (Archetype)
Main Plugins, Goals
Unit and integration tests
Life cycle: compilation, test, assembly, deployment, …
Breakdown of a project into modules
Encoding of files: sources, resources
Version management, snapshots
Profiles
Packaging Deployment of a project on an application server
Deployment by copy: ssh, ftp
Maven and SCM (Source Code Management): SVN, Git
Workshop: creation and management of Java / JEE projects in a context of continuous integration
Dependency declaration, scopes
Transitive dependencies, optional dependencies
Version management (patterns)
Conflict management
Save a project / archive as a dependency in the repository
Workshop: configuration of dependencies and conflict management
Generation of a Maven site (mvn site) Site
plugin and customizations
Test reports (surfire)
Checkstyle, changelog,
PMD / CMD changes
Technical documentation (JavaDoc), sources (JXR)
Qualimetry: Maven and Sonar
Workshop: Generation of the site and various reports on the project
Duration
3 days
Price
£ 1862
Audience
Java / jee developers, architects, project managers
Prerequisites
Notions of Java / JEE
Reference
JAV923-F
Sessions
From 06/04/2021 to 08/04/2021 (example)
Dates ?
Dates ?