InfoQ Homepage TDD Content on InfoQ
-
Mocking for Java and Flex
There are plenty of choices for creating mock objects in Java but Flex has seen little development in this area, until recently. The popular and maturing Mockito framework now has a Flex counterpart, which aims to bring mocking to Flex.
-
Agile In a Flash
Many people playfully credit the 3x5 index card as the "agilist's badge". In many ways though this is not an inaccurate or inappropriate; going through a stack of index cards is a often real hallmark of many agile activities. But what about using index cards to learn and remember agile? With their 'Agile In a Flash' project, Tim Ottinger and Jeff Langr want to help people do just that.
-
Kent Beck Suggests Skipping Testing for Very Short Term Projects
Kent Beck suggests that on very short term projects, when you're trying to figure out if there is a viable concept, you might do less (even no) automated testing to help get off the ground quickly. This goes against all of the conventional wisdom surrounding TDD.
-
How TDD and Pairing Increase Production
"Test-driven Development" and "Pair Programming" are two of the most widely known of agile practices, yet are still largely not being practiced by many agile teams. Often, people will cite being "too busy" to adopt such practices as TDD and pairing; in essence, implying that striving for high code quality will reduce productivity. Mike Hill explains how this logic is seriously flawed.
-
Recommended TDD Tutorials
Recently, Dave Nicolette consolidated a list of recommended TDD tutorials from a discussion on the Extreme Programming group. Here is a sneak peak at the consolidated list with categorization for quickly getting started with Test Driven Development.
-
NUnit 2.5 had been Released
After nearly a year's work, NUnit 2.5 has finally released. This release includes: Data-Driven Tests, Inline Expected Exception Tests, Generic and Lambda support, Out of process execution of tests and Source Code Display.
-
Rails BDD with Macros, I18n,... with Remarkable
There are many ways to develop, test and integrate your Rails application: from TDD with the basic Test:Unit or ZenTest, to BDD with RSpec, Shoulda or Cucumber. Remarkable tries to unify the syntax and adds some more flavors to make your Rails BDD painless.
-
Presentation: 10 Ways to Improve Your Code
In this presentation recorded during QCon SF 2008, Neal Ford, an architect at ThoughtWorks, shows 10 ways to write better code. This is practical advice for developers, but application architects can benefit from it too.
-
J.B. Rainsberger: "Integration Tests Are A Scam"
Well-known agilist and TDD expert J.B. Rainsberger has begun a series of posts to explain why his experience has led him to the thought-provoking conclusion that "integration tests are a scam".
-
Presentation: The Ethics of Error Prevention
No one wants programming errors. We have many tools to detect and correct errors in code. We also have a number of techniques we can use to prevent the introduction of errors. In this presentation, Michael Feathers t looksat error prevention while posing a number of interesting questions.
-
Moq 3.0 Released
Version 3.0 RTM of the popular Moq .NET mocking library is now available. Moq 3.0 includes Silverlight support, improved event and property mocking, Pex integration, and improved samples.
-
Empirical Studies Show Test Driven Development Improves Quality
A paper first published in the Empirical Software Engineering journal reports: "TDD seems to be applicable in various domains and can significantly reduce the defect density of developed software without significant productivity reduction of the development team." The study compared 4 projects, at Microsoft and IBM that used TDD with similar projects that did not use TDD.
-
Spolsky vs Uncle Bob
The last few weeks, a public dispute has been going on between Joel Spolsky and Robert C Martin (Uncle Bob) about Test-Driven Development and about the SOLID principles of OO design. Here is a summary and review of the match.
-
Refactoring Not a Substitute for Design
A member of the stack overflow community asked "Is design now a subset of refactoring?" The question highlights a common misunderstanding about the agile approach to emergent design. A common agile mantra is: "Test. Code. Refactor. Repeat!" This approach doesn't replace design; it simply spreads the work out over the life of the project.
-
Interview: Software Design Helps Being Agile
In this interview made by InfoQ’s Deborah Hartmann during Agile 2008, Rebecca Wirfs-Brock talks about software design, the need for good design and the technical debt that might accumulate slowing down the development process. The conclusion is that agile developers should not disregard design.