我的应用程序中有几个Groovy类,位于src/groovy
下。关联的测试类应该去哪里,他们应该使用GroovyTestCase
还是mixins(TestFor
)?
答案 0 :(得分:4)
您可以为班级选择单元测试或集成测试。从docs您可以看到它们之间的区别:
单元测试
单元测试是“单位”级别的测试。换句话说,你是 在不考虑的情况下测试单个方法或代码块 周边基础设施单元测试通常在没有的情况下运行 存在涉及I / O这类数据库,socket的物理资源 连接或文件。这是为了确保它们尽可能快地运行 因为快速反馈很重要。
整合测试
集成测试与单元测试的不同之处在于您具有完全访问权限 测试中的Grails环境。
因此,如果您需要访问数据库或需要完整的环境,请执行集成测试。如果没有,请创建一个单元测试(这将使用内存数据库)。
@TestFor
旨在用于单元测试,因为这将模拟基本测试(参见GrailsUnitTestMixin
)。如果选择集成测试,请不要使用注释。
答案 1 :(得分:1)
将它们放入test/unit
。如果他们需要弹簧上下文或休眠会话,请将它们放在test/integration
中。您可以使用GroovyTestCase
或mixins,但它们是完全可选的。测试只需遵循以下约定:
Tests
或Test
test
开头或使用JUnit的@Test
注释