HTML and CSS Reference
Through a series of small steps, we have managed to write a library that implements
a design pattern, ready for use in our projects. We have seen how tests can help
make design decisions, how tests form requirements, and how tests can help solve
nasty bugs—even cross-browser related ones.
While developing the library we have gotten some basic practice writing tests
and letting tests guide us through writing production code. We have also exercised
our refactoring muscles thoroughly. By starting out with the simplest thing that
could possibly work we have gained a good understanding of the important role of
refactoring in test-driven development. It is through refactoring, both in production
code and tests, that our solutions can grow refined and elegant.
In the next chapter we will deal more closely with browser inconsistencies as
we dig into the mechanics of “Ajax”, using test-driven development to implement
a higher level interface on top of the XMLHttpRequest object.