Unit Testing Principles, Practices, and Patterns Video Edition

Unit Testing Principles, Practices, and Patterns Video Edition

English | TS | AVC 1280×720 | AAC 44KHz 2ch | 7h 20m | 1.16 GB

Unit Testing Principles, Patterns and Practices shows you how to refine your existing unit tests by implementing modern best practices. You’ll learn to spot which tests are performing, which need refactoring, and which need to be deleted entirely! Upgrade your testing suite with new testing styles, good patterns, and reliable automated testing.

Great testing practices will help maximize your project quality and delivery speed. Wrong tests will break your code, multiply bugs, and increase time and costs. You owe it to yourself—and your projects—to learn how to do excellent unit testing to increase your productivity and the end-to-end quality of your software.

Unit Testing Principles, Patterns and Practices teaches you to design and write tests that target the domain model and other key areas of your code base. In this clearly written guide, you learn to develop professional-quality test suites, safely automate your testing process, and integrate testing throughout the application life cycle. As you adopt a testing mindset, you’ll be amazed at how better tests cause you to write better code.

What’s inside

  • Universal guidelines to assess any unit test
  • Testing to identify and avoid anti-patterns
  • Refactoring tests along with the production code
  • Using integration tests to verify the whole system
Table of Contents

1 Problems with coverage metrics
2 The goal of unit testing!
3 The goal of unit testing
4 Using coverage metrics to measure test suite quality
5 What makes a successful test suite
6 Common database testing questions
7 Database transaction management
8 Test data life cycle
9 Testing the database
10 Exposing private state
11 Mocking concrete classes
12 Unit testing anti-patterns
13 Contrasting the classical and London schools of unit testing
14 Integration tests in the two schools
15 The classical and London schools of unit testing
16 The isolation issue The classical take
17 What is a unit test
18 Exploring the xUnit testing framework
19 How large should each section be
20 Naming a unit test
21 Refactoring to parameterized tests
22 The anatomy of a unit test
23 Exploring well-known test automation concepts
24 Extreme case #3 Brittle tests
25 In search of an ideal test
26 The four pillars of a good unit test
27 The intrinsic connection between the first two attributes
28 What causes false positives
29 Mocks and test fragility
30 Observable behavior vs. implementation details
31 The classical vs. London schools of unit testing, revisited
32 The relationship between mocks and test fragility
33 Comparing the three styles of unit testing
34 Styles of unit testing
35 Transitioning to functional architecture and output-based testing
36 Understanding functional architecture
37 Understanding the drawbacks of functional architecture
38 Analysis of optimal unit test coverage
39 Conclusion
40 Refactoring toward valuable unit tests!
41 Refactoring toward valuable unit tests
42 Take 3 Removing complexity from the application service
43 Using the CanExecuteExecute pattern
44 Conclusion
45 How to test logging functionality
46 Integration testing An example
47 Integration testing best practices
48 Using interfaces to abstract dependencies
49 Which out-of-process dependencies to test directly
50 Why integration testing
51 Mocking best practices!
52 Mocking best practices
53 Part 1 The bigger picture
54 Part 2 Making your tests work for you
55 Part 3 Integration testing
56 Part 4 Unit testing anti-patterns