mock中测试私有方法,不是mock

Method method = PowerMockito.method(CategoryController.class, "getCategory",List.class);//创建调用CategoryController类中的getCategory私有方法的method对象,参数是list对象
List<Category> category_all_actual = (List<Category>)method.invoke(categoryController, categories);//调用categoryController的私有方法,返回list对象,参数是list对象
assertArrayEquals(category_all_expect.toArray(), category_all_actual.toArray());//比较实际返回的对象与期望的对象是否相等.

时间: 2024-12-28 20:11:42

mock中测试私有方法,不是mock的相关文章

Junit中对私有方法测试

在Junit中对私有方法进行测试有两种方法: 一.改变私有方法的访问权限(此方法并不推荐) 二.使用反射机制(推荐) 例如:Calculator类中有一个  private int add2(int a,int b) { return a+b; } 那么在我们的测试类的测试方法中: @Test public void add2() { Calculator c=new Calculator(); Class<Calculator> cal=Calculator.class; try { Met

PHP通过反射方法调用执行类中的私有方法

PHP 5 具有完整的反射 API,添加了对类.接口.函数.方法和扩展进行反向工程的能力. 下面我们演示一下如何通过反射,来调用执行一个类中的私有方法: <?php //MyClass这个类中包含了一个名为myFun的私有方法class MyClass {        private $tmp = 'hello';        private function myFun()    {        echo $this->tmp . ' ' . 'world!';    }} //通过类

ruby中的私有方法和保护方法

ruby中的私有方法是指方法只能被隐含调用,不能被显示调用.而当没有显示接收者的时候,会把self当成接收者.因此,只能在自身中调用私有方法,这也是私有方法的调用规则. ruby的私有方法机制目的是:使得你很容易将方法分为两种,外部世界可以访问的方法和外部世界不可以访问的方法. 如下: 1 class A 2 def a 3 self.method 4 end 5 def method 6 p "hello world" 7 end 8 private :method 9 end 10

使用PowerMockito和Mockito进行模拟测试,包括静态方法测试,私有方法测试等

依赖:这个很重要,不同版本用法也有点区别: <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>2.0.2-beta</version> <scope>test</scope> </dependency> <dependency> <group

spring-在切面类中定义私有方法解决重复编写execution函数

一.创建项目    项目名称:spring101002二.添加jar包    1.在项目中创建lib目录        /lib    2.在lib目录下添加相关spring jar包        --用于AspectJ        com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar        spring-aspects-3.2.0.RELEASE.jar        --用于切面编程        com.springsour

如何测试私有方法

使用 spring 的 ReflectionTestUtils ReflectionTestUtils.invokeMethod(object, method , args); 导入依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>4.1.6.RELEASE</version&

Junit3.8 私有方法测试

1. 测试类的私有方法时可以采取两种方式:1) 修改方法的访问修饰符,将private修改为default或public(但不推荐采取这种方式).2) 使用反射在测试类中调用目标类的私有方法(推荐). 1 package junit; 2 3 public class Calculator2 4 { 5 private int add(int a, int b) 6 { 7 return a + b; 8 } 9 } 10 11 12 package junit; 13 14 import ja

从vs2010的UnitTestFramework类库提取私有方法反射调用的方法

背景 年龄大点的程序员都知道在vs2010中创建单元测试非常的简单,鼠标定位在方法名字,右键创建单元测试,就会创建一个测试方法,即使是在私有方法上也可以创建测试方法. VS2010以后就没这么简单了,微软默认取消了这种快捷方式,安装  Unit Test Generator 插件也只能在公有方法上创建单元测试.为了方便的测试私有方法,我们需要一种反射调用私有成员的方法.这种现成的方法可以在网上找到不少,我这里是讲述如何从VS2010 的UnitTestFramework类库提取反射调用私有成员的

JavaScript面向对象-静态方法-私有方法-公有方法-特权方法,学习

var baseClass= function(){ function show(){//私有方法 alert("访问私有方法"); } function showName(){ alert(this.name); } this.showw = function (){//特权方法 showName(); } } //静态方法 baseClass.showStatic = function(){ alert("访问静态方法"); } //公有方法 baseClass