Continuous Integration: Improving Software Quality and Reducing Risk (Virginia A Hendry's Library) by Paul Duvall & Steve Matyas & Andrew Glover

Continuous Integration: Improving Software Quality and Reducing Risk (Virginia A Hendry's Library) by Paul Duvall & Steve Matyas & Andrew Glover

Author:Paul Duvall & Steve Matyas & Andrew Glover
Language: eng
Format: epub
Publisher: Addison-Wesley Professional
Published: 2007-12-08T16:00:00+00:00


Automate Unit Tests

People often use the term “unit test” rather broadly. This can cause confusion, especially when people start claiming their unit tests “take too long to run.” Defining a common vocabulary for developer tests can assist in categorizing them into efficient groups, which can make all the difference in creating an effective CI system capable of running fast builds.

Unit tests verify the behavior of small elements in a software system, which are most often a single class. Occasionally, though, the one-to-one relationship between a unit test and a class is slightly augmented with additional classes because the classes under test are tightly coupled.

Listing 6-1 shows a unit test written with the TestNG framework. TestNG is annotation-based, hence the @testng.test Javadoc-like comment in the starPatternTest method. This test case verifies, via Java 1.4’s assert capability, that the class RegexPackageFilter properly filters strings via a regular expression pattern.

Listing 6-1. Isolated Unit Test Using TestNG

public class RegexPackageFilterTestNG {

/**

* @testng.test

*/

public void starPatternTest() throws Exception{



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.