Developer testing is a critical component of Agile development--yet studies show that developer tests typically achieve only 50-60% test coverage. Learn how to achieve higher test coverage with your unit tests, how to create better test case designs, and how to make the software itself more testable. See how to plan and carry out an efficient developer testing strategy. Avoid common testing pitfalls, and learn to determine how much developer testing is enough. 2-day seminar

Benefits

You'll learn the most efficient and effective forms of developer testing. Specifically, how to develop optimal unit test cases--both functional (black box) and structural (white box)--as well as integration test cases. You will also learn how to plan and carry out effective and efficient developer testing.

Who Should Attend

This seminar is intended for software leads, software engineers, QA leads, and test professionals who want to learn testing from the developer's perspective.

Certification Information

4 PDU

PMI PDU Reporting Instructions

Key Concepts in Developer Testing

  • Test self-assessment -- how good a tester are you?
  • Test concepts: white box vs. black box, regression testing, positive and negative test cases, testing as "proof" of quality, test coverage
  • Relating testing to other QA and development activities

Developer Testing Basics

  • Kinds of tests: single-step testing, bench testing, unit testing, integration testing, as well as system test, and acceptance test
  • Stubs, drivers, and mock objects

Test-First Development

  • Advantages of writing test cases before writing code
  • Test-first development cycle described
  • Use of unit test frameworks
  • Most useful test strategies

Test Planning

  • Scoping unit and integration testing to match your project's needs
  • Design for testability
  • Maximizing efficiency of unit testing and integration testing
  • Validating your unit tests and integration tests

Testing Databases

  • Database interface testing
  • Internal database testing
  • Obtaining test data
  • Tools for database testing

Black-Box (Functional) Testing

  • Finding domain specifications
  • Common domain defects
  • Designing input domain unit tests
  • Designing output domain unit tests
  • Equivalence classes
  • Boundary value analysis
  • Pairwise testing

White-Box (Structural) Testing

  • Control-flow testing
  • Tools for structural coverage
  • Statement coverage
  • Path coverage
  • Decision (branch) coverage
  • Modified condition/decision coverage

Special Testing Issues

  • Mock objects
  • Inheritance issues
  • Testing embedded software
  • Writing tests based on specifications
  • Integration testing strategies

Test Tools

  • Unit test frameworks
  • Memory leak detectors
  • Performance analyzers
  • Coverage monitors

Testing the Tests

  • Peer Reviewing test cases
  • Defect seeding
  • Mutation testing

Steve Tockey

Steve Tockey is the Principal Consultant at Construx Software. During more than three decades in the software industry, he has worked as a programmer, analyst, designer ...

Eric Rimbey

Eric Rimbey is a Senior Fellow at Construx Software where he focuses on software design, requirements, quality, and testing. Eric has developed a wide range of ...

Melvin Perez-Cedano

Melvin Perez-Cedano, MSIT-SE, CSDP, is a Senior Fellow at Construx Software where he focuses on software design, software construction, software process, and configuration ...