`
leeyouser
  • 浏览: 24807 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

单元测试中如何调用私有方法

阅读更多
同事遇到了需要对私有方法进行单元测试的情况,上网查了下,如果确实想仅仅对私有方法进行测试(并不推荐这样,原因后面叙述),可以使用send方法:
class A
  private
  def just_show(someone)
    puts "I am #{someone}"
  end
end

A.new.send :just_show,"Jerry"


我认为私有方法不需要进行单独测试,理由如下:
1.定义了私有方法必然会有公有方法直接或间接调用了这个私有方法,因此对公有方法进行测试就间接地测试了这个私有方法
2.直接对私有方法进行测试会破坏类的访问结构
分享到:
评论

相关推荐

    对私有方法进行单元测试

    这意味着将私有方法的逻辑封装到一个可测试的公有方法中,然后在测试中针对这个公有方法编写单元测试。例如,`TestCaseHelper`可能有一个`execute()`方法,它调用了`processData()`,那么我们可以在`...

    利用PowerMock模拟静态方法和私有方法的示例

    在单元测试中,我们通常不直接测试私有方法,而是通过测试公有方法来间接验证私有方法的正确性。然而,有时私有方法包含了复杂的逻辑,为了确保整个类的正确性,我们可能需要对其进行单独测试。PowerMock允许我们...

    VS2010单元测试工具使用

    对于私有方法的测试,VS2010通过私有访问器(PrivateObject)提供支持,使得即使非公共成员也可以进行单元测试。 总结来说,VS2010的单元测试工具提供了完善的环境,帮助开发者构建和执行测试,确保代码的质量和...

    java反射机制,调用私有方法

    2. **访问私有成员**:通过反射,我们可以访问类的私有字段和方法,这在单元测试、调试或某些特定场景下可能需要。`Method`类提供了`getDeclaredMethod()`方法来获取类的私有方法,而`invoke()`方法则可以用来调用这...

    c#单元测试例子

    这时,我们可以利用`InternalsVisibleTo`属性来让测试项目访问源代码中的内部成员,或者使用反射来调用私有方法。但需要注意的是,这种方法应该谨慎使用,因为过度依赖对私有方法的测试可能会导致测试过于紧密耦合于...

    单元测试中PowerMock常用方法.

    在单元测试领域,PowerMock是一个强大的工具,它扩展了诸如Mockito等模拟框架的功能,允许开发者模拟静态方法、构造函数、final类和方法、私有方法以及删除静态初始化器等。这一工具对于测试那些难以或者无法正常...

    VS2005中的单元测试

    VS2005中的单元测试是软件开发过程中用于验证代码功能正确性的一种自动化测试方法。在Visual Studio 2005中,开发人员可以利用内置的测试工具来创建、执行和管理单元测试,确保代码质量并减少潜在的缺陷。本文将详细...

    JUnit4利用反射机制测试类的私有成员

    在Java编程中,单元测试是确保代码质量的重要环节。JUnit4作为Java领域广泛使用的单元测试框架,提供了丰富的功能来帮助开发者测试代码。然而,对于类的私有成员(包括私有方法和私有属性),由于其封装性,通常不易...

    C#私有成员反射调用类库

    本文将深入探讨如何使用反射来调用C#类库中的私有成员,以及这种技术在单元测试中的应用。 ### 反射的概念 反射是.NET框架的一项功能,它允许程序在运行时检查自身,获取类型、接口、方法、属性等元数据信息,并能...

    VS2010中的单元测试

    私有方法的测试通常是单元测试中的一个挑战,因为它们不能被外部直接调用。VS2010通过私有访问器(Private Accessor)解决了这个问题。私有访问器是一种动态生成的代理类,它可以访问原本私有的成员。通过这个功能,...

    junit测试private函数

    2. **获取私有方法的Method对象**:使用`Class`对象的`getDeclaredMethods()`方法,可以获取类中所有的方法,包括私有方法。然后通过`getMethod()`或`getDeclaredMethod()`方法,指定方法名和参数类型,获取私有方法...

    如何在C ++中对私有函数进行单元测试?

    总之,对C++中的私有函数进行单元测试有多种策略,包括使用友元、测试助手、`std::function`和`std::bind`、`std::invoke`,以及测试框架提供的特殊功能。选择哪种方法取决于项目需求、团队规范和代码的可维护性考虑...

    VS2010单元测试工具使用.rar_4S3Z_VS2010单元测试工具使用_wingl2t

    通过以上讲解,我们可以看出VS2010的单元测试工具是一个全面的测试平台,它简化了测试的创建、管理和执行,同时也支持高级特性如私有方法测试和数据驱动测试,确保了代码的质量和稳定性。对于任何使用VS2010的开发者...

    单体测试-Guide.pdf

    私有方法测试是指在单元测试中测试私有方法的方法,而 DBUnit 是一个常用的数据库测试辅助工具,可以帮助开发人员快速地测试数据库中的数据。 单体测试的重要性不言而喻。通过单元测试,可以快速地檢出代码中的错误...

    Visual Studio单元测试教程

    本教程将详细介绍如何在VS中利用其自身的工具进行单元测试,包括测试项目的创建、不同类型的测试以及如何运行和分析测试结果。 一、VS2005的测试功能 1. 测试简介 VS2005引入了测试项目,允许开发者在同一个解决...

    单元测试工具 C++单元测试工具 静态代码分析 代码动态测试

    C++单元测试工具 Parasoft C++ Test 简介 Parasoft C++ Test 是 Parasoft 公司出品的一个针对 C/C++源代码进行自动化单元测试的工具。这个工具可以对源代码进行三种测试:白盒测试、黑盒测试和回归测试。 白盒...

    spring MVC junit 单元测试(controller)

    在Spring MVC框架中,单元测试是确保代码质量的重要步骤,特别是在控制器层(Controller)。这篇博客主要探讨了如何使用JUnit进行Spring MVC Controller的单元测试。在实际开发中,单元测试可以帮助我们尽早发现潜在...

    Struts2+Spring+hibernate中对action的单元测试环境搭建[总结].pdf

    在软件开发中,单元测试是一种非常重要的测试方法,可以帮助我们确保代码的可靠性和稳定性。在 Struts2+Spring+Hibernate 框架中,对 Action 的单元测试环境的搭建是一个非常重要的步骤。本文将详细介绍如何在 ...

    eclipse单元测试所需jar包

    1. JUnit:这是Java中最基础的单元测试框架,提供了断言方法和测试注解,如@Test。Eclipse内置了JUnit4,但如果你需要使用JUnit5,需要下载并添加相应的JAR。 2. Hamcrest:一个匹配对象的库,常与JUnit结合使用,...

    单元测试之道C#版.rar

    在实践中,本书会探讨如何为不同类型的函数和对象编写单元测试,如私有方法、静态方法、依赖注入和异步代码的测试。此外,还会讨论测试驱动开发(TDD)和行为驱动开发(BDD)这两种开发模式,它们强调先写测试后写...

Global site tag (gtag.js) - Google Analytics