Jonathan Fullam on Test-Driven Development

Jonathan Fullam on Test-Driven Development

date:Mar 18, 2011

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.

More on Open source software testing tools

  • canderson

    Apache Camel news from JavaOne 2011

    VIDEO - Apache Camel, the open source integration framework, is enjoying an upward swing in popularity as the community prepares for the upcoming release of Camel 3.

    ( Oct 12, 2011 )

  • canderson

    Does Open Source Mean Superior Software Quality?

    VIDEO - James Strachan, the man who believes he invented Groovy, presented a lightninground session at TheServerSide Java Symposium to speak about FuseSource and Open Source Software. In that discussion, he asserts that there are reasons why open source projects may in fact be higher in quality than software one might purchase from a vendor.

    ( May 10, 2011 )

  • canderson

    James Strachan on Apache Camel and Fuse IDE

    VIDEO - James Strachan, who works on Apache Camel as well as other Apache projects, talks about apache Camel and the capabilities of the Fuse IDE.

    ( Mar 18, 2011 )

  • Tomcat performance optimization through consolidated log file handlers

    Tip - By default Tomcat uses several log file handlers, but performance can easily be optimized by configuring the server to use only one.

    ( May 05, 2013 )

  • Lacking NoSQL standards more dangerous than proprietary vendor lock-in?

    Feature - While many NoSQL solutions are open source, the lack of standards means any organization embracing a given solution may never have the ability to easily change to another competing solution.

    ( Apr 23, 2013 )

  • Troubleshooting Java Code: Log or Re-Throw, but Don't Do Both

    Tip - When building Java applications, proper logging and proper exception handling go hand in hand. But there are times when putting the two together is just plain wrong. This article explains why rethrowing an exception and logging it at the same time is a bad thing to do.

    ( Mar 06, 2013 )

  • How Headless Android is Impacting Embedded Systems Development

    Feature - Given the fact that Android is targetted towards the smartphone market, you wouldn't expect any significant interest in Android from the embedded market. However, making Android 'headless', and working with it on an embedded device has a variety of compelling use cases, and accordingly it is becomming ever more popular.

    ( Mar 06, 2013 )

  • Pitfalls of open source licensing and how to avoid them

    Feature - Not all open-source licenses are created equal, and if an organization doesn't pay enough attention to the fine print, they may be looking at a cease and desist letter. Here we provide some advice for organizations looking to ensure that they are in full compliance with their open source licenses.

    ( Mar 06, 2013 )