您的位置:软件测试 > 开源软件测试 > 开源单元测试工具 > TestNG
使用TestNG的新特性管理实际项目中的大量单元测试
作者:网络转载 发布时间:[ 2013/3/15 13:59:56 ] 推荐标签:

图 3. 生成的测试报告

该目录中有一个 testng-failed.xml 文件,该文件可以被用来运行前一次运行失败的所有测试用例。下文将会详细介绍使用该文件的步骤。

重新运行前次运行失败的测试用例

随着项目开发的进行,单元测试的数量也会成倍的增加。有时仅仅有数量很小的某几个测试用例会运行失败。在这种情况之下,对于每一次修改,可能并不需要跑完所有的测试用例。只需要重新运行前次运行失败的测试用例。TestNG 内建了重新运行上次失败测试用例的功能,下文将会给出重新运行前次错误测试用例的步骤。

运行一组测试用例,如果这一组测试用例中有失败的用例,TestNG 会在输出目录中创建一个叫做 testng-failed.xml 的配置文件。这个文件记录了本组测试用例中运行失败的测试用例。使用该文件,用户可以快速的重新运行上次运行失败的测试用例。而无需运行整个测试用例组。如前文所述,运行完 Ant 脚本之后,会在脚本运行的目录之中生成一个 test-output 目录。该目录中,包含 testng-failed.xml 文件。可以用如下的命令运行被标记为运行失败的测试用例。

列表 3. 重新运行前次运行失败的测试用例

    
C:>java -classpath
c:/spark/eclipse/plugins/org.testng.eclipse_4.7.0.0/lib/testng-jdk15.jar
org.testng.TestNG -d test-outputs test-output estng-failures.xml


运行结果如下:

图 4. 重新运行前次运行失败的测试用例的输出结果

分布式测试特性

随着测试用例规模的扩大,分组数量的增加。使用一台主机来运行所有的测试用例需要消耗大量的时间。为了解决这个问题,TestNG 提供了分布式特性。本文将介绍使用 TestNG 分布特征——使用多台主机同时运行测试用例。TestNG 提供的分布式模型如下所示:

图 5. TestNG 提供的分布式模型

这是一个典型的 master/slave。在这个模型中,有一个负责调度的 master 节点,和一些负责执行任务的 slave 节点。下文将介绍如何配置这样一个分布式模型。

首先,在远程机器上部署 slave 节点。如上图所示,在远程节点上不仅要配置 TestNG 运行环境,还需要复制测试用例文件。

图 6. 将需要运行的测试用例部署到远程机器上

然后在这台远程机器上以 “slave” 模式启动一个 TestNG 实例,使用如下命令:java – classpath <testng_path>;<testcase_path> org.testng.TestNG -slave <port>

图 7. 以“slave”模式启动一个 TestNG 实例

这样,一个 TestNG 实例将会被启动,并且等待即将到来的连接请求。如果有需要,可以在多台机器上以 slave 模式启动 TestNG 实例。

完成了所有 slave 实例的启动之后,将所有启动 slave 实例的主机信息记录在一个配置文件中,如图 8 所示:

图 8. 分布式运行的配置文件

然后使用该配置文件启动 TestNG 的 master 实例。

上一页123下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd