Junit中代码之间的区别是什么
class MethodsTest {
Methods methods = new Methods();
}
以及这些:
class MethodsTest {
Methods methods;
@BeforeEach
void init() {
methods = new Methods();
}
}
何时使用第一个代码,何时使用第二个代码?
答案 0 :(得分:0)
在第一个版本中,您希望正在使用的特定测试运行程序在执行特定测试时隐式创建MethodsTest
的新实例,从而创建Methods
的新实例。在第二个版本中,您要告诉测试跑步者在执行新测试时明确使用其创建Methods
的新实例。
答案 1 :(得分:0)
如果不涉及继承,则没有区别。
如果要扩展while True:
x = input("Type anything")
if x == '':
break
if x not in random_list:
random_list.append(x)
类,则可以覆盖MethodsTest
方法,并且覆盖方法不一定必须直接初始化字段,或者不一定要通过调用init()
来间接初始化字段;否则它的初始化方式可能不同。
就个人而言,我希望第一个。它更简洁,不可重写,即使没有JUnit专门知识,它的语义对于熟悉Java的任何人来说都是显而易见的。