对jUnit不熟悉我到目前为止所做的是在测试方法本身内设置我的依赖项(即创建对象)。
问题:
Eclipse嘲笑未使用的变量。这是setUp
和tearDown
的用途吗?
在setUp
内创建对象,然后null
通过tearDown
创建对象是不错的做法?
上述方法的其他用例有哪些?
使用预先套件setUp
和tearDown
的目的是什么。当有人派上用场时,有人会举个例子吗?
干杯, 安德鲁
答案 0 :(得分:1)
对jUnit不熟悉我到目前为止所做的是在测试方法本身内设置我的依赖项(即创建对象)。
如果它们被初始化并正确清理,这种方法没有任何问题。如果不同的测试需要不同的依赖关系,你必须这样做。
Eclipse会模拟未使用的变量。这是setUp和tearDown的用途吗?
未使用的变量与setUp和tearDown方法无关。你应该使用它们或删除它们。
在setUp
中创建对象是一种好习惯
在某些情况下,setUp
方法(或现在的@Before
注释)是必要的。
通常,构造函数和内联初始化也可以正常工作。
如果您在测试中有继承,或者您希望在初始化期间利用@Before
,那么@Rule
注释很有用。
然后通过tearDown将它们清空?
这是一个坏主意。 tearDown
(或现在的@After
注释)应该用于清理连接和文件等外部资源,或者还原对应用程序静态状态所做的更改。无需将字段归零,因为垃圾收集器无论如何都会回收它们。
使用预套件setUp和tearDown的目的是什么?当有人派上用场时,有人会举个例子吗?
有时您希望在测试之间共享一些资源。例如,创建数据库连接速度很慢。套件方法允许您为每个套件创建一次,而不是每次测试或每个测试类创建一次。