Open Enrollment

Developer-Driven Testing for Software Engineers

Who: Join Brian Daugherty, Construx Senior Fellow, and learn the skills you need to implement an effective developer testing strategy.

Schedule: This learning program includes 4 training sessions and 6 mentoring/practice sessions held May 16 – June 23. Deadline to register and pay is May 11.

Class Session 1: Tuesday, May 16, 9-11:30AM

Mentor Session 1: Friday, May 19, 9-10 AM

Class Session 2: Tuesday, May 23, 9-11:30AM

Mentor Session 2: Friday, May 26, 9-10 AM

Class Session 3: Tuesday, May 30, 9-11:30AM

Mentor Session 3: Friday, June 2, 9-10 AM

Class Session 4: Tuesday, June 6, 9-11:30AM

Mentor Session 4: Friday, June 9, 9-10 AM

Mentor Session 5: Friday, June 16, 9-10 AM

Mentor Session 6: Friday, June 23, 9-10 AM

Price: $2000 (Save $500 now with code: 2023LPSavings)

Register for This Class
Pay Now via Credit Card
Go to Program Details
Developer Testing Learning Program

Great developer testing programs are built with these skills

You’ll learn them all in the code-driven, hands-on Implementing, Growing, and Optimizing Developer Tests and why they’re important. If you’re a Program Manager, Project Manager, Scrum Master, manager, or developer planning a developer testing strategy and want to get a handle on the key concepts, you might want to begin with Developer Testing Core Skills.

Design the optimal set of test cases

To use the minimum number of test cases, ensure you have enough test coverage, and prioritize test cases based on risk.

Use coding best practices for software and related automated tests

To ensure code is testable, fix untestable code, build maintainable tests, reduce complexity, and enable automated developer testing.

Get to the next level of automated unit testing

To enable fast, independent testing of code at the lowest functional block level using an XUnit framework.

Test without external dependencies using test doubles

To test your code in isolation, guarantee fast and repeatable expected results, and avoid turning unit or functional tests into integration tests by replacing external dependencies.

Grow test cases with your code

To design and develop test cases based on functional requirements before writing the code, using Test-Driven Development (TDD) and Acceptance TDD (ATDD).

Avoid testing gaps by using best practices for new or legacy code

To focus your developer testing effort, make optimal use of your QA team, and avoid common testing gaps.

Topics at a glance

Before your program starts

Developer Testing assessment to discover where your program is strong and where it needs improvement.

Why you need developers doing testing

The high cost of finding defects late in the process
Which issues introduce the most defects?
Types of automated testing and when to use each
Run automated tests as part of CI/CD
Automated unit testing using XUnit
Grow your tests with your code using TDD and ATDD

Designing test cases

Test design techniques for maximum coverage & minimum tests
Test contracts and behavioral tests
Domain coverage, test pairs
Combinatorial testing

Ensuring code coverage & designing for testability

Decision tables, branch coverage, basis path coverage
Control flow graphs, condition coverage
Designing testable software, identifying untestable code
Designing for easier code & test case maintenance
The key tenets of testability
How to measure and reduce code complexity
Single Responsibility Principle (SRP)
Law of Demeter and the Principle of Least Knowledge

Replacing dependencies with test doubles, best practices, & pitfalls

The problem: unit tests impacted by external dependencies
Design for testing in isolation via dependency management
Dependency replacement techniques
Dependency injection techniques
Types of test doubles
Using developer tests as part of CI/CD pipeline
Continuous integration & testing in hybrid agile
Planning releases & syncing with external milestones
Developer testing for new or legacy code
Six things you should do to benefit from developer testing

Why are our Learning Programs so effective?

We interviewed more than 400 software leaders around the world and what did they request?

Customized, minimally disruptive virtual sessions that focus on real-world results through a balanced mix of coursework, self-study, and expert mentoring.

Grow and thrive with developer testing

Developer Testing Core Skills

Learn the concepts and best practices that enable you to avoid common testing pitfalls, determine how much testing is enough, use automated testing, and deliver quality software.

Learn more »

Developer-Driven Testing for Software Engineers

Learn to design the optimal set of tests cases, design software for testability, fix untestable code, test your code in isolation from external dependencies, apply developer testing to new or legacy code, and sync releases with integration milestones.

Learn more »

Ready to give yourself or your team state-of-the-art learning?

Get in touch, and we’ll get right back to you!

Get in Touch