Companies Home Search Profile

Writing Highly Maintainable Unit Tests

Focused View

Zoran Horvat

6:15:18

108 View
  • 1. Course Overview.mp4
    01:30
  • 1. Putting Tests into the Frame.mp4
    04:12
  • 2. Version Check.mp4
    00:15
  • 3. What Follows in This Course.mp4
    06:41
  • 4. Proving Correctness of Code.mp4
    07:48
  • 5. Testing Correctness at Run Time.mp4
    06:20
  • 6. Inventing Automated Tests.mp4
    06:49
  • 7. Inventing the Test Runner.mp4
    07:14
  • 8. Summary.mp4
    01:37
  • 1. The Problem of Choosing What to Test.mp4
    03:39
  • 2. Changing the Class to Support State Testing.mp4
    06:00
  • 3. Implementing a State Test.mp4
    04:39
  • 4. On Multiple Assertions in One Unit Test.mp4
    06:04
  • 5. Completing State Tests.mp4
    02:25
  • 6. Implementing an Interaction Test Through Derivation.mp4
    05:53
  • 7. Implementing an Interaction Test Through Interface.mp4
    05:07
  • 8. Understanding Regression.mp4
    04:40
  • 9. Summary.mp4
    02:03
  • 1. Applying Branch Coverage Strategy.mp4
    06:33
  • 2. Assessing Usefulness of Automatic Mocks.mp4
    05:40
  • 3. Assessing Usefulness of Manual Mocks.mp4
    03:59
  • 4. Assessing Maintainability of Automatic vs. Manual Mocks.mp4
    05:36
  • 5. Leaning on the Compiler and Automatic Mocks.mp4
    06:12
  • 6. Example - Abstracting Time.mp4
    09:31
  • 7. Summary.mp4
    02:41
  • 1. Stubbing vs. Mocking Dependencies.mp4
    04:37
  • 2. Letting Dependencies Grow Through Refactoring.mp4
    05:38
  • 3. Evaluating Interaction Tests.mp4
    03:54
  • 4. Understanding Lifetime of a Dependency.mp4
    07:41
  • 5. Avoiding Unnecessary Unit Tests.mp4
    07:06
  • 6. Testing Temporal Coupling Between Method Calls.mp4
    08:30
  • 7. Summary.mp4
    02:47
  • 1. Introducing Abstract Data Types.mp4
    05:54
  • 2. Writing Unit Tests Against the Abstract Data Type.mp4
    06:27
  • 3. Replacing Entire Concrete Class.mp4
    04:04
  • 4. Varying Implementation of an Abstract Data Type.mp4
    04:28
  • 5. Extending the Abstract Data Type.mp4
    04:38
  • 6. Investigating Negative Test Cases.mp4
    06:18
  • 7. Inventing Preconditions.mp4
    06:20
  • 8. Summary.mp4
    02:18
  • 1. Understanding Possible Options When Deriving a Class.mp4
    06:45
  • 2. Introducing Base and Derived Test Classes.mp4
    05:42
  • 3. When Implementation Affects Abstraction.mp4
    04:21
  • 4. Separating Functional from Non-functional Requirements.mp4
    04:27
  • 5. Completing the Definition of Abstract Data Type.mp4
    03:10
  • 6. Inventing the Abstract-Test-Driven Development.mp4
    07:51
  • 7. Interface Tests in Light of the Liskov Substitution Principle.mp4
    05:51
  • 8. Summary.mp4
    01:56
  • 1. Implementing Inheritance.mp4
    02:11
  • 2. Using Abstract Unit Tests in TDD.mp4
    03:54
  • 3. TDD-style Interface Implementation.mp4
    06:27
  • 4. Applying TDD to Discover Missing Tests.mp4
    05:25
  • 5. A Word About Naming Classes and Interfaces.mp4
    02:49
  • 6. Refactoring a Class Covered by Abstract Tests.mp4
    04:10
  • 7. Writing Tests Against Abstract List.mp4
    09:50
  • 8. Discussing the Benefits of Base Tests Class.mp4
    03:02
  • 9. Summary.mp4
    02:33
  • 1. Inventing Design Pattern Tests.mp4
    05:31
  • 2. Implementing the Design Pattern Tests.mp4
    03:26
  • 3. Testing All Aspects of a Design Pattern.mp4
    05:07
  • 4. Defining Value-typed Semantic.mp4
    03:34
  • 5. Designing the Equality Tests.mp4
    03:34
  • 6. Defining Equality Testing Rules.mp4
    04:43
  • 7. Implementing Equality Testing Library.mp4
    06:27
  • 8. Using the Equality Testing Library.mp4
    05:13
  • 9. Summary.mp4
    02:56
  • 01. Discovering Impossible Tests.mp4
    03:17
  • 02. Understanding Error Conditions.mp4
    04:01
  • 03. Division of Exceptions.mp4
    04:05
  • 04. Defining Preconditions and Postconditions.mp4
    04:56
  • 05. Avoiding Condition Checks with Contracts.mp4
    04:15
  • 06. Inheriting Contracts.mp4
    04:27
  • 07. Applying Contracts to a Production Class.mp4
    06:00
  • 08. Asserting the Preconditions.mp4
    03:28
  • 09. Implementing Contracts in Production Code.mp4
    04:46
  • 10. Removing Superfluous Unit Tests.mp4
    06:28
  • 11. Summary.mp4
    02:41
  • 12. Course Summary.mp4
    02:11
  • Description


    This course will teach you how to develop maintainable and sustainable tests as your production code grows and develops.

    What You'll Learn?


      Take advantage of the knowledge this course gives you and get equipped with the theory and practical skills you need to start making test suites manageable for the life of your product. In this course, Writing Highly Maintainable Unit Tests, you'll learn advanced techniques in unit testing. First, you'll explore how to turn production code testable in the first place. Next, you'll discover how to make tests survive future implementation changes. Then, you'll learn how to avoid nearly all code duplications in tests. Finally, you'll design reusable testing libraries. By the end of this course, you'll process deep understanding that will make your tests better in many ways.

    More details


    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Zoran Horvat
    Zoran Horvat
    Instructor's Courses
    Zoran Horvat is Principal consultant at Coding Helmet Consultancy, speaker and author of 100+ articles, and independent trainer on .NET technology stack. He can often be found speaking at conferences and user groups, promoting object-oriented development style and clean coding practices and techniques that improve longevity of complex business applications.
    Pluralsight, LLC is an American privately held online education company that offers a variety of video training courses for software developers, IT administrators, and creative professionals through its website. Founded in 2004 by Aaron Skonnard, Keith Brown, Fritz Onion, and Bill Williams, the company has its headquarters in Farmington, Utah. As of July 2018, it uses more than 1,400 subject-matter experts as authors, and offers more than 7,000 courses in its catalog. Since first moving its courses online in 2007, the company has expanded, developing a full enterprise platform, and adding skills assessment modules.
    • language english
    • Training sessions 78
    • duration 6:15:18
    • level average
    • English subtitles has
    • Release Date 2022/12/31

    Courses related to Unit Testing

    Courses related to Software Development

    Courses related to Developer Tools