MyPage is a personalized page based on your interests.The page is customized to help you to find content that matters you the most.

I'm not curious

Improving Testability Through Design

Course Summary

A well designed application is not necessarily the one which has a perfect separation of layers, or the one which perfectly implements some predefined design patterns. It is certainly a plus to have these two goals met, but that is not sufficient to make

  • +

    Course Syllabus

    ● Assessing Reliability of Tests
        ◦ Introduction
        ◦ Tests Coverage Considerations
        ◦ The Value of Tests
        ◦ The Quality of Tests
        ◦ Introducing the Demo Application
        ◦ Adding Properties to a Class
        ◦ Identifying Some of the Design Issues
        ◦ Summary
    ● Developing an Application the Old Way
        ◦ Preparing Tests for Properties
        ◦ Testing Boundary Conditions
        ◦ Improving the Boundary Conditions Tests
        ◦ Defining the Circle
        ◦ Adding an Operation to the Frame
        ◦ Completing Tests for the Operation
        ◦ Completing the Feature
        ◦ Adding More Tests
        ◦ Notes About how to Improve Unit Tests
        ◦ Adding Another Feature and Its Tests
        ◦ Adding a Concrete Implementation of the Circle
        ◦ Trying the Demo Application
        ◦ Exposing the Defects
        ◦ A Case When It's Better Not to Mock
        ◦ Exposing a Serious Defect
        ◦ Summary
    ● Guidelines of Redesign for Reliability
        ◦ How Defects Are Introduced
        ◦ How to Avoid Introducing Defects
        ◦ How to Improve Tests
        ◦ Factoring Out Common Logic From Tests
        ◦ Using Common Testing Methods
        ◦ Decoupling Library Test Code From Concrete Types
        ◦ Completing the Testing Library for Decimal Properties
        ◦ Avoiding Null Reference Exceptions
        ◦ Introducing the Non-Default Constructor
        ◦ Making Plans for Constructor Tests
        ◦ Single vs. Multiple Tests per Test Method
        ◦ Designing the Library for Constructor Tests
        ◦ Beginning the Library Implementation
        ◦ Adding Features to the Library
        ◦ Completing the Constructor Testing Library
        ◦ Making the Constructor Test Pass
        ◦ Discussion on Declarative Tests
        ◦ Discussion on Remaining Transition Tests
        ◦ Summary
    ● Getting the Most Out of Immutable Objects
        ◦ About Values
        ◦ Immutable Objects as Values
        ◦ Example of Immutable Objects in C#
        ◦ More Measurements on C# Performance
        ◦ Performance of Immutable Collections
        ◦ When to Be Careful With Immutable Collections
        ◦ One Common Mistake With Immutable Collections
        ◦ Different Ways to Validate Data
        ◦ Problems When Validating in More Than One Way
        ◦ Benefits From Validating Only in the Constructor
        ◦ Transactional Qualities of Operations on Immutable Objects
        ◦ Avoiding Processing Overhead in Immutable Operations
        ◦ Immutability and Equality
        ◦ Equality in Objects With Identity
        ◦ Example of Immutable Structure
        ◦ Immutable Structure Implementation
        ◦ Designing the Immutable Circle Interface
        ◦ Implementing the Immutable Circle Class
        ◦ Implementing the Immutable Frame Class
        ◦ Summary
    ● Improving the Unit Tests
        ◦ About Different Kinds of Tests
        ◦ About Integration Tests
        ◦ Overview of Types That Will Be Tested
        ◦ Preparing the Immutable Structure Tests
        ◦ Designing the Immutable Structure Tests API
        ◦ Beginning the Library Implementation
        ◦ Implementing the Assert Method
        ◦ Completing the Library
        ◦ Testing the Rectangle
        ◦ Completing the Immutable Structures Tests
        ◦ Testing the Circle Constructor
        ◦ Testing the Geometry
        ◦ Testing the Immutable Methods
        ◦ Preparing the Equality Testing Library

Course Fee:
USD 29

Course Type:


Course Status:



1 - 4 hours / week

This course is listed under Development & Implementations and Quality Assurance & Testing Community

Attended this course?

Back to Top

Awards & Accolades for MyTechLogy
Winner of
Top 100 Asia
Finalist at SiTF Awards 2014 under the category Best Social & Community Product
Finalist at HR Vendor of the Year 2015 Awards under the category Best Learning Management System
Finalist at HR Vendor of the Year 2015 Awards under the category Best Talent Management Software
Hidden Image Url

Back to Top