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

单元测试助手方法?

弘浩瀚
2023-03-14
问题内容

我有以前具有大量方法的类,因此我将此方法的工作细分为“辅助”方法。

这些辅助方法声明private为强制执行封装-
但是我想对大型公共方法进行单元测试。是否也可以对辅助方法进行单元测试,好象其中的一个失败,而调用它的公共方法也会失败,这样我们就可以确定为什么失败了?

另外,为了使用模拟对象测试这些对象,我需要将其可见性从私有更改为受保护,这是否可取?


问题答案:

一种方法是省略private测试并将其放在同一程序包中。然后,测试可以调用内部方法,但是其他方法(=程序包外部)不能调用内部方法。

同样,内部方法失败会产生错误消息,从而可以轻松解决问题。当您将代码投入生产时,所看到的内容要少于测试的内容,并且承受着巨大的压力,需要迅速解决问题。因此,在这里呆一分钟可以节省一个小时,因为老板坐在脖子上。



 类似资料:
  • 英文原文:http://emberjs.com/guides/testing/test-helpers/ 测试Web应用最大的问题是代码都是事件驱动的,因此很可能出现异步的情况(例如输出与输入不是按照顺序发送)。其衍生问题就是代码可能会以任何可能的顺序执行。 下面这个例子能很好的说明此问题:当一个用户点击了两个按钮,一个接着一个,分别从不同的服务器加载数据。这种情况响应的时间是不同的。 当编写测试

  • 测试失败,因为为。为什么不以阻塞的方式在ViewModel中运行块? 我知道,如果将其转换为返回对象的方法,则可以通过调用获取对象,或者可以返回并调用。但是,我想通过将我的ViewModel方法保留为函数来实现这一点,有没有办法做到这一点呢?

  • Android Studio 1.1 添加了单元测试支持,详细请看 Unit testing support。本章的其余部分描述的是 “instrumentation tests”。利用 Instrumentation 测试框架可以构建独立的测试 APK 并运行在真实设备(或模拟器)中进行测试。

  • 英文原文:http://emberjs.com/guides/testing/unit/ 单元测试用于测试代码的一个小片段,确保其功能正常。与集成测试不同,单元测试被限定在一个范围内,并且不需要Ember应用运行。 全局 vs 模块 过去如果没有作为一个全局变量加载整个Ember应用,要对应用进行测试非常困难。通过使用模块(CommonJS,AMD等)来编写应用,可以只加载被测试的部分,而不用将其

  • 问题内容: 我正在使用JUnit4和Cobertura仅使用静态方法测试助手类。测试方法是一项容易的任务,并且已经完成。 但是,cobertura显示该类没有被测试完全覆盖,因为它没有在任何地方实例化。 我不想创建此类的实例(它是一个帮助程序类),因此第一个解决方案是隐藏构造函数(这通常是帮助程序类的好方法)。 然后,cobertura抱怨测试未涵盖空的私有构造函数。 有什么解决方案可以在这种情况

  • 本文向大家介绍详解.Net单元测试方法,包括了详解.Net单元测试方法的使用技巧和注意事项,需要的朋友参考一下 1、测试异常 可以直接对方法进行异常测试,也可以对模拟对象进行异常测试,但是,对模拟对象进行异常测试,很少用,所以,这里就介绍对方法的异常测试。请看如下代码,当用户名为空的时候,抛出异常。 例如 测试代码如下 2、测试返回值 这里用到了一个LastCall的一个类,比较常用,一些辅助测试