《maven权威指南(中文)

Page 77

定制一个Maven项目 该文件包含了一个给 YahooParserTest 用的 XML 文档。有了这个文件,我们不用从 Yahoo! Weather 获取 XML 响应就能测试 YahooParser 了。

4.12. 执行单元测试 既然你的项目已经有单元测试了,那么让它们运行起来吧。 你不必为了运行单元测试 做什么特殊的事情, test 阶段是 Maven 生命周期中常规的一部分。 当你运行 mvn package 或者 mvn install 的时候你也运行了测试。 如果你想要运行到 test 阶段为 止的所有生命周期阶段,运行 mvn test 。 $ mvn test ... [INFO] [surefire:test] [INFO] Surefire report directory: ~/examples/simple-weather/target/surefire-reports ------------------------------------------------------T E S T S ------------------------------------------------------Running org.sonatype.mavenbook.weather.yahoo.WeatherFormatterTest 0 INFO YahooParser - Creating XML Reader 177 INFO YahooParser - Parsing XML Response 239 INFO WeatherFormatter - Formatting Weather Data Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.547 sec Running org.sonatype.mavenbook.weather.yahoo.YahooParserTest 475 INFO YahooParser - Creating XML Reader 483 INFO YahooParser - Parsing XML Response Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.018 sec Results : Tests run: 2, Failures: 0, Errors: 0, Skipped: 0

从命令行运行 mvn test 使 Maven 执行到 test 阶段为止的所有生命周期阶段。 Maven Surefire 插件有一个 test 目标,该目标被绑定在了 test 阶段。 test 目 标执行项目中所有能在 src/test/java 找到的并且文件名与 **/Test*.java, **/ *Test.java 和 **/*TestCase.java 匹配的所有单元测试。 在本例中,你能看到 Surefire 插件的 test 目标执行了 WeatherFormatterTest 和 YahooParserTest 。 在 Maven Surefire 插件执行 JUnit 测试的时候,它同时也在 /usr/local/hudson/ hudson-home/jobs/maven-guide-zh-to-production/workspace/content-zh/target/

目录下生成 XML 和常规文本报告。 如果你的测试失败了,你可以去 查看这个目录,里面有你单元测试生成的异常堆栈信息和错误信息。 surefire-reports

61


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.