当前位置: 首页 > 面试题库 >

JUnit TestCase对象实例化

沈思博
2023-03-14
问题内容

是否TestCase使用对象的新(或不同)实例来运行JUnit测试用例中的每个测试方法?还是一个实例可用于所有测试?

public class MyTest extends TestCase {
  public void testSomething() { ... }
  public void testSomethingElse() { ... }
}

运行此测试时,MyTest将创建多少个类实例?

如果可能的话,提供一个指向文档或源代码的链接,我可以在其中验证行为。


问题答案:

我在JUnit文档中找不到关于您问题的明确答案,但正如anjanb所写,其目的是每个测试都独立于其他测试,因此可以为要运行的每个测试创建一个新的TestCase实例

如果您要在测试类中的所有测试用例之间共享昂贵的测试设置(“ 固定装置 ”),则可以在静态方法上使用 @BeforeClass
批注以实现以下结果:http://junit.sourceforge。 net / javadoc_40 / org / junit /
BeforeClass.html
。但是请注意,仍然可以为每个测试创建一个新实例,但这不会影响@BeforeTest方法已初始化的静态数据



 类似资料:
  • 在将maven项目导入到Eclipse Luna之后,在修改方法后保存时,弹出窗口中会显示以下错误: 无法初始化模块TreeWalker-无法实例化JUnitTestCase

  • 我最近开始学习Spring。由于我是Spring的新手,我想到了几个问题。其中之一是: 如本文所述,“只要容器加载了spring配置,所有bean都会被实例化。org.springframework.context.ApplicationContext容器遵循预加载方法。”链接 1-这是否意味着使用Spring ApplicationContext创建的所有对象都是单例对象? 我创建了这个简单的测

  • 本文向大家介绍ES6顶层对象、global对象实例分析,包括了ES6顶层对象、global对象实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了ES6顶层对象、global对象。分享给大家供大家参考,具体如下: 顶层对象 顶层对象,在浏览器环境指的是window对象,在Node指是的global对象。ES5之前中,顶层对象的属性与全局变量是等价的。 上面的代码中,顶层对象的属性赋值和

  • 本文向大家介绍举例说明JavaScript中的实例对象与原型对象,包括了举例说明JavaScript中的实例对象与原型对象的使用技巧和注意事项,需要的朋友参考一下 首先声明:javascript中每个对象都有一个constructor属性和一个prototype属性。constructor指向对象的构造函数,prototype指向使用构造函数创建的对象实例的原型对象。 在这段代码中会报错,sayN

  • 本文向大家介绍Java对象流实例代码,包括了Java对象流实例代码的使用技巧和注意事项,需要的朋友参考一下 将日期对象和向量对象写入文件,然后从文件中读出并输出到屏幕上 对象输入流)可读取使用对象输出流写入的原始数据和类型,与文件输入输出流一起可以实现对象的持久性存储。 结果: Fri Jul 24 11:28:01 CST 2015 [不求有功, 才华出众, 瞬息万变] 成功构建 (总时间: 2

  • 英文原文:http://emberjs.com/guides/object-model/classes-and-instances/ 定义一个新的Ember的类,只需要调用Ember.Object的extend()方法即可: 1 2 3 4 5 App.Person = Ember.Object.extend({ say: function(thing) { alert(thing)