Live Chat
Monday - Friday 8am - 6pm EST Chat Now
Contact Us
Monday - Friday 8am - 8pm EST 1-866-716-6688 Other Contact Options
Checkout

Cart () Loading...

    • Quantity:
    • Delivery:
    • Dates:
    • Location:

    $

Implementing Agile Test Driven Development for Non-Programmers (TT3530)

GK# 4217 Vendor# TT3530

Course Overview

TOP

Test-Driven Deployment (TDD) is an evolutionary approach to development where you must first write a test that fails before you write new functional code. It is primarily an agile approach to software development and is one of the core principles of Extreme Programming.

This in-depth Agile-testing course will provide you with a solid introduction to TDD and "test first" design within the context of Agile processes and practices.

Schedule

TOP
  • Delivery Format:
  • Date:
  • Location:
  • Access Period:

$

What You'll Learn

TOP
  • Concept of development agility and the Agile Manifesto
  • Major agile development methods and their strengths and weaknesses
  • Manage an agile environment within a structured organizational approach
  • Introduce agility into a development organization
  • Unit testing and how various xUnit frameworks facilitate unit testing
  • xUnit family of unit testing tools
  • Concepts of and motivations for TDD
  • Relate unit testing, test-driven development, and test coverage to agile processes
  • Importance of refactoring in supporting agile and test driven processes
  • Continuous Integration (CI) and components
  • Motivations for CI
  • Best practices for everything from CI to testing within the context of agile development

Outline

TOP
Viewing outline for:

Virtual Classroom Live Outline

1. Agile Development

  • Agile Software Development
    • Controlling Risk
    • Agile Development
    • Motivation - Risk Reduction
    • Discipline of Timeboxing
    • Incremental Delivery and Evaluation
    • Agile Software Development Manifesto
    • Same Approach with Documentation
    • Change Wins Out Over Following a Set Plan
    • Refactoring is Artifact of Change
    • Rules
    • Extreme Values
    • XP Practices
    • CI
    • Agile Testing
    • Lowest Bar of Unit Testing
    • Agile Testing Stages
    • Test First
    • Acceptance Tests
    • TDD
    • General Agile Principles
    • Adopting or Trying Agile
    • Setting User Expectations

2. Test-Driven Development (TDD)

  • Unit Testing
    • Purpose of Unit Testing
    • Successful Unit Testing
    • Unit Testing Frameworks
    • XUnit
    • Reasons tUse XUnit
    • How XUnit works
  • ROI of TDD
    • Rationale for TDD
    • Process of TDD
    • Advantages tTDD
    • Side-Effects of TDD
    • Observations About Tests
    • Tools tSupport TDD
    • Automation and Coverage
    • Working with Coverage Analysis
    • Concept of Test "Close" Development

3. Improving Code Quality Through Refactoring

  • Refactoring
    • Sample of Refactorings
    • Refactoring and Testing
    • Suggested Refactoring
    • Impact of Refactoring
  • Advanced Refactoring
    • Design Patterns
    • Code that Feels Wrong
    • Refactoring tDesign Patterns
    • Abstract Factory Design Patterns
    • Adapter Design Patterns
    • Strategy Design Patterns

4. Advanced Topics

  • Continuous Integration (CI)
    • Typical CI Process
    • Local Development Environment
    • CI Server
    • Potential Benefits of CI
    • CI Best Practices
    • Automate Source Code Management
    • Automate Build Process
    • Automate Testing
    • Automate Deployment
    • Commit Code Early and Often
    • Manage the Build Process
    • Separate Integration Environment
    • Mimic Production Environment
    • Increase Visibility
  • Agile Testing Best Practices
    • Coding Practices
    • State- vs. Interaction-Based Testing
    • Source Control
    • Pair Programming and Code Reviews
    • CI
    • Legacy Code

Prerequisites

TOP
  • Knowledge of current development processes, such as structured top-down development and the waterfall method is beneficial

Who Should Attend

TOP

Test professionals, test managers, project leaders, quality analysts, and developers

Follow-On Courses

TOP

  • Advanced agile or test-driven development courses
  • Software engineering or business analysis courses
  • Security software design courses
  • Service-oriented analysis and design courses

Course Delivery

This course is available in the following formats:

Virtual Classroom Live

Experience expert-led online training from the convenience of your home, office or anywhere with an internet connection.

Duration: 2 day

Request this course in a different delivery format.
Enroll