Jonathan Fullam talks about the benefits of test driven development, the connection between Java and test-driven design, and how test driven design helps in the bug-fixing stage of testing. This video comes from an interview with Jan Stafford at TheServerSide Java Symposium.
Read the full transcript from this video below:
Jonathan Fullam on Test-Driven Development
Jonathan Fullam: OK. So hello, my name is Jonathan Fullam and I'm going to tell you
a little about test driven development. The benefit of doing test driven
development is really to focus on the design of your system. It's really
to improve the design of your system, to allow your system to be modified
very easily. So, a big thing I've seen with why test driven development has
been difficult to adapt is from misinformation, from people not really
understanding what it is, not understanding that it's not really a testing
activity, but a development process, a design activity. So I think the
biggest tip to get people started with test driven development, is
education and training. Make sure people are aware of the definition of
test driven development, what it is and what are the steps, and the frame
of mind that they need to use, and the principles that they need to
consider when doing test driven development.
Jan Stafford: Tell us. What's the big connection with Java and test driven
development and how it's used there?
Jonathan Fullam: Sure. Java, as you might know, is an object oriented design
language. Test driven development is really perfect for enforcing object
oriented design principles. It definitely has a great fit with Java as an
object oriented design language. Of course, because Java is one of the
leading languages as far as having tools and frameworks available, there is a
lot of tools already available when you want to start incorporating test
driven development into your process.
Jan Stafford: Seems like it'd be a lot better for the test teams too, which
usually get thrown a lot of stuff at the end of a process.
Jonathan Fullam: Yeah, that's true. In one way I think definitely test teams
definitely appreciate it, is because the system is designed better. The
bugs that do get reported, when they get fixed, they get fixed. Other
things don't break. This is the one thing I see testers really go crazy
about is when they report a bug, and then it gets reopened a week later, or
that bug is fixed and then five other bugs are reopened.
Jan Stafford: Good, thanks Jonathan.
Jonathan Fullam: Thank you.