精通Grails: 测试 Grails 应用程序 - 编程入门网
有可能的(参见 参考资料 获得结合使用 TestNG 和 Groovy 的示例)。Groovy 的字节码与 Java 编程兼容,因此您可以通过 Groovy 使用任何 Java 测试框 架。
精通Grails: 测试 Grails 应用程序(2)时间:2011-07-29 IBM Scott Davis将清单 3 中的代码添加到 grails-app/domain/HotelStay.groovy 和 test/integration/HotelStayTests.groovy: 清单 3. 一个简单的测试
清单 3 正是我前面提到那种低级 Grails 基础设施测试。您应该相信 Grails 能够正确执行这个操作 ,因此这是一个典型的错误测试类型。但它允许您编写最简单的测试并观察其运行,实现了本文的目的。 要运行所有测试,请输入 grails test-app。要仅运行这个测试,请输入 grails test-app HotelStay(由于约定优于配置,Tests 后缀可以省略)。不管输入哪个命令,您应该会在命令提示中看 到如清单 4 所示的输出(注意:为了突出重要的特性,我删减了许多代码)。 清单 4. 运行测试时的输出
这里发生了 4 件重要的事情: 可以看到,environment 被设置为 test。这意味着 conf/DataSource.groovy 文件中的 test 块的数 据库设置已生效。 test/unit 中的脚本已运行。您尚未编写任何单元测试,所以不能找到任何单元测试,这并不奇怪。 test/integration 中的脚本已经运行。您可以看到 HotelStayTests.groovy 脚本的输出 — 它的旁 边有个很大的 SUCCESS。 这个脚本向您展示一组报告。 如果您在 Web 浏览器中打开 /src/trip-planner2/test/reports/html/index.html,应该会看到一个 关于所有已运行的测试的报告。如图 1 所示。 图 1. JUnit 顶级汇总报告 精通Grails: 测试 Grails 应用程序(3)时间:2011-07-29 IBM Scott Davis如果您单击 HotelStayTests 链接,应该会看到 doSomething() 测试,如图 2 所示: 图 2. JUnit 类级报告 如果测试意外失败,命令提示输出和 HTML 报告(如图 3 所示)将通知您: 图 3. 失败的 JUnit 测试 编写第一个有价值的测试 以上是第一个正常运行的简单测试,接下来将展示一个更加实用的测试示例。假设您的 HotelStay 类 有两个字段:Date checkIn 和 Date checkOut。根据一个用户情景,toString 方法的输出应该像这样: Hilton (Wednesday to Sunday)。通过 java.text.SimpleDateFormat 类,获取正确格式的日期非常简单 。您应该为此编写一个测试,但不需验证 SimpleDateFormat 是否正确工作。您的测试做两件事情:它验 证 toString 方法是否按照预期运行;它证明您是否满足用户情景。 精通Grails: 测试 Grails 应用程序(4)时间:2011-07-29 IBM Scott Davis单元测试是可执行的文档 用户需求常常是桌面上的某些文档。作为开发人员,您应该将这些需 求转换成有效的软件。 需求文档的问题是:在进行实际软件开发时它通常已经过时。它不是可以 随着软件的发展而变化的 “活动文档”。工件 一词完美地描述 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |