-
Recent Posts
Recent Comments
Archives
- February 2012
- December 2011
- October 2011
- September 2011
- July 2011
- June 2011
- May 2011
- April 2011
- March 2011
- October 2010
- July 2010
- June 2010
- April 2010
- March 2010
- February 2010
- January 2010
- October 2009
- June 2009
- May 2009
- March 2009
- December 2008
- November 2008
- October 2008
- June 2008
- January 2008
- August 2007
- June 2007
- January 2006
- October 2005
Tags
acceptance testing Acronyms Arrow ASP.NET MVC Assembly Resolution Auto-mocking Containers BDD C# Closures Composite Application Development Convention over Configuration Custom Assertions Cygwin Dependency Injection Dependency Inversion Principle Design Patterns ECMAScript Expected Object Pattern ExtensionMethods Git JavaScript Law of Demeter Machine.Specifications Managed Extensibility Framework Model-View-Controller Model-View-Presenter NHibernate NuGet Object-Oriented Design Presentation-Abstracton-Control Resharper TDD Test Doubles Testing Ubiquitous Language UnityMeta
Tag Archives: Testing
How To Produce Bug-Free Software
Many are resigned to the fact that all software is destined to contain some “bugs”, but did you know it’s possible (and arguably pretty easy) to always produce “bug-free” software? In this article, I’ll explain how. Terms To begin, let’s … Continue reading
Posted in Uncategorized
4 Comments
Effective Tests: Acceptance Tests
In the last installment of our series, we discussed the topic of Context Obscurity along with strategies for avoiding the creation of obscure tests. As the final topic of this series, we’ll take an introductory look at the practice of … Continue reading
Effective Tests: Avoiding Context Obscurity
In the last installment of our series, we looked at the Expected Object pattern as a way to reduce code duplication, eliminate the need to add test-specific equality concerns to production code and to aid in clarifying the intent of … Continue reading
Posted in Uncategorized
4 Comments
Introducing the Expected Objects Library
Introduced in the Effective Test Series, the Expected Object pattern is a technique involving the encapsulation of test-specific logic within a specialized type designed to compare its configured state against that of another object. Use of the Expected Object pattern … Continue reading
Effective Tests: Expected Objects
In the last installment of the Effective Tests series, the topic of Custom Assertions was presented as a strategy for helping to clarify the intent of our tests. This time we’ll take a look at another test pattern for improving … Continue reading
Effective Tests: Custom Assertions
In our last installment, we took a look at using Auto-mocking Containers as a way of reducing coupling and obscurity within our tests. This time, we’ll take a look at another technique which aids in preventing obscurity caused by complex … Continue reading
Effective Tests: Auto-mocking Containers
In the last installment, I set forth some recommendations for using Test Doubles effectively. In this article, I’ll discuss a class of tools which can aid in reducing some of the coupling and obscurity that comes with the use of … Continue reading
Effective Tests: Double Strategies
In our last installment, the topic of Test Doubles was introduced as a mechanism for verifying and/or controlling the interactions of a component with its collaborators. In this article, we’ll consider a few recommendations for using Test Doubles effectively. … Continue reading
Effective Tests: Test Doubles
In our last installment, we concluded our Test-First example which demonstrated the Test Driven Development process through the creation of a Tic-tac-toe component. When writing automated tests using either a Test-First or classic unit testing approach, it often becomes necessary … Continue reading
Effective Tests: A Test-First Example – Part 6
In part 5 of our Test-First example, we continued by addressing issues filed by the QA team. While I thought we had covered the reported defects pretty well, I wanted to do a little smoke testing against the full application … Continue reading
