这种方法,如何写测试用例

如下代码,如何 mock 第一个类,去写第二个类的方法的测试用例呢

class Foo
{
       public function demo()
       {
             return 'demo value';
       }
}

class Bar
{
        public function barDemo($a)
        {
              if(is_array($a)){
                return $a
              }

              $foo = new Foo()
              return $foo->demo();
        }
}
大多数知识,不需要我们记住,只需要认知即可
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

用不着mock吧。如果我来测试第二个类的方法,是写两个case,第一个$a是array,第二个非array就可以了

3年前 评论
tu6ge-php (楼主) 3年前
luke_wu (作者) 3年前
tu6ge-php (楼主) 3年前
luke_wu (作者) 3年前
讨论数量: 2

用不着mock吧。如果我来测试第二个类的方法,是写两个case,第一个$a是array,第二个非array就可以了

3年前 评论
tu6ge-php (楼主) 3年前
luke_wu (作者) 3年前
tu6ge-php (楼主) 3年前
luke_wu (作者) 3年前

大概改写为这样 class Bar { public function barDemo($a,ClassName $foo) { if(is_array($a)){ return $a }

          return $foo->demo();
    }

}

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!