Developer Testing Boot Camp

Melvin Perez-CedanoSenior Fellow

See how to plan and carry out an efficient and effective developer testing strategy. Avoid common testing pitfalls, and learn to determine how much developer testing is enough.

8 Hours of Content
14 Lectures
Purchase Options

Course Details

  • Overview

    Developer testing is a critical component of software development–yet studies show that developer testing is typically inefficient and ineffective. Significant developer effort is spent without finding defects that should have been found. Learn how to be more efficient and effective by achieving higher test coverage and how to make the software itself more testable. See how to plan and carry out an efficient and effective developer testing strategy. Avoid common testing pitfalls, and learn to determine how much developer testing is enough.


    • Core Concepts: Test cases, test coverage, types of testing, test tools and frameworks
    • Functional Testing
    • Structural Testing
    • Test Planning
    • Test Driven Development
    • Writing Testable Code
    • Testing the Tests
    • Useful Test Tools

  • Course Details

    Core Concepts

    • Test case, test set, test suite
    • Positive and negative test cases
    • Functional and structural testing
    • Unit, integration, system, acceptance, regression testing
    • Test coverage
    • Test tools and frameworks
    • Testing as risk mitigation

    Functional Testing

    • Testing from requirements
    • Requirements coverage
    • Input domain analysis
    • Output domain analysis
    • Equivalence class partitioning
    • Equivalence class coverage
    • Boundary value analysis
    • Boundary value coverage
    • Combinatorial analysis
    • All pairs coverage

    Structural Testing

    • Control flow analysis
    • Statement coverage
    • Decision (branch) coverage
    • Condition-decision coverage
    • Multiple condition coverage
    • Modified condition/decision coverage
    • Path coverage
    • Loop coverage
    • Static Analysis
    • Cyclomatic complexity
    • Fan in
    • Fan out

    Test Planning

    • Determining the ROI of testing
    • Cost / benefit of automating tests
    • Cost / benefit of unit testing
    • Cost / benefit of integration testing
    • Cost / benefit of system testing
    • Cost / benefit of designing for testability
    • Introduction to risk-based testing

    Unit testing tools and practices

    • Unit testing frameworks
    • Stubs and drivers
    • Test doubles and mock objects
    • Data driven tests

    Test driven development

    • Process of test driven development
    • Benefits of test driven development
    • Costs of test driven development
    • Pitfalls of test driven development

    Writing testable code

    • Design by contract
    • Minimize logical complexity
    • Functional decomposition
    • Robustness and correctness
    • Refactoring
    • Design patterns
    • Dependency injection
    • Alternatives to inheritance

    Testing the tests

    • Peer Reviews
    • Defect seeding
    • Mutation testing

    Helpful tools

    • Control-flow graph generators
    • Data-flow graph generators
    • Test input generators
    • Data driven test frameworks
    • Behavior driven test frameworks
    • Coverage analyzers
    • Static metrics analyzers
    • Mock object frameworks
    • Mutation tools
    • Dependency structure matrix
    • Cause effect graph

  • Melvin Perez-Cedano

    Construx Senior Fellow

    Melvin Pérez-Cedano is a Senior Fellow at Construx Software where he provides training and consulting services that help organizations and individuals to successfully adopt agile development processes and practices. Melvin has a history of transforming dysfunctional and immature organizations into performance and quality-oriented environments. He has an outstanding background and leadership in promoting and implementing company-wide initiatives for adopting software development processes, practices, tools and standards across the entire software development life cycle. He is also experienced in architecting and leading the development of commercial and custom software applications. Melvin co-founded CAM Informática, one of the largest software providers in the Dominican Republic, where he ran the technical division for 14 years.

    Melvin has a Master of Science degree in Software Engineering from Carnegie Mellon University (CMU). He also completed a Ph.D. coursework at Rochester Institute of Technology (RIT). He is an IEEE Certified Software Development Professional (CSDP), a Certified SAFe Program Consultant (SPC4), Certified Scrum Master (CSM), Professional Scrum Master (PSM), and Professional Scrum Developer (PSD). He is bilingual in English and Spanish. He has lectured extensively throughout the Americas and is a former IEEE Distinguished Lecturer for Latin America.

Purchase Options

Single License


Start Training Today

Get unlimited access to this online course for an entire year.


Single All Access Pass


Save 60%

Access this course along with ALL other Construx OnDemand Content.


Team License


Discounts Start At 10%

Need 10 or more seats? Contact us to learn how much you can save!


Team All Access Pass


Best Savings

The more seats you need, the more you save! Contact us for info.


Start Your Free Trial

Try a free preview of the entire Construx OnDemand Catalog.