T2861
Test Driven Development
Test Driven Development (TDD) improves the quality of solutions! If the application is implemented according the principles of TDD the development process starts from the design of test cases and the actual implementation comes later. TDD gives well disciplined practices for design and implementation and each new feature need to pass test cases before the release.
Objectives:
Test Driven Development (TDD) produces high quality code while making sure the requirements of the application are being met. In this course, you will learn the principles of test-first/fail-first development, how to practically apply the fundamental TDD "test-implementation-refactor" strategy in your development, and understand how an optimal design grows out of designing tests first. You will also learn how to apply TDD principles to the entire development lifecycle, including acceptance and integration testing, as well as how to incorporate tests into legacy code. With many examples and hands-on exercises, you will exit this course with a good understanding of why TDD is an excellent method to apply to your projects today!
Audience:
System developers, System architects. Knowledge of object oriented languages and programming with Java or .NET languages is required. (Examples are shown in Java and C#)
Course outline:
Day 1.
9.00 Agile Manifesto!
- Agile planning and iterations
Extreme Programming elements
- Teams, responsibilities and activities
- Requirements and management
Test Driven Development
- Why Test Driven Development works?
- Agile development and Test Driven Development
- The role of refactoring
Unit Testing
- Test-First Programming (TFP)
- xUnit and JUnit
- Design patterns for unit testing
- Dependency Injection
Mock Objects
- Independency of classes and objects
- Easy Mock and Easy Mock.NET
Integration Testing
- Planning and implementation of integration tests
- ANT and Nant as tools of integration
16.30 Day Ends
Day 2.
9.00 Code Refactoring
- Maintenance of simplicity
- Why to refactor?
- Tools for refactoring: Eclipse and.NET Refactor!
- What refactoring requires?
Testing Databases
- Strategies for database testing
- Strategies for test data
- Design of test cases
TDD and Other Environments
- Testing UI solutions
- Testing Web solutions
Automated Acceptance Testing
- Need for Acceptance Testing
- Acceptance Testing as a tool of communication
- Role of customer
- FIT framework and it's syntax
Configuration management and continuous integration
- Versioning with Subversion and Visual Studio
- Automatic build process with Ant and VSTS
- Continuous integration CruiseControl and Cruisecontrol.net/Team Foundation Server
Visions to the future
16.30 Course Ends
Fakta
Kurs
T2861
Längd
2 dagar
Pris
14.500 kr (exkl. moms)
Förkunskaper
Kursen kräver förkunskaper inom Objektorienterad utveckling som C#.NET, Java och liknande.
Efterföljande utbildningar
Kursmaterial
Course material in english and the course is in english.
Kontakta oss
för mer information:
08 - 587 116 10 (Stockholm)
031 - 773 07 90 (Göteborg)
040-662 20 60 (Malmö)
info@informator.se