我有一个使用rand()
函数的函数,我想对它进行单元测试...但是我很挣扎。
我目前正在使用Phockito来帮助模拟和模拟返回等
public function myFunction()
{
return hash(
'sha256',
'this is some random string: ' . rand()
);
}
测试文件:
public testFunction()
{
$myClass = new MyClass();
$result = $myClass->myFunction();
$expected = /* Some hashed string I expect */;
$this->assertEquals($expected, $result);
}
我曾经考虑过尝试模仿我正在使用的类Phockito::,但是在这个过程中连接的所有其他函数也需要被模仿......这将是一个很大的工作。
1条答案
按热度按时间6l7fqoea1#
要么使用像php-mock这样的库来模拟php函数,要么重构你的函数来接受你的随机数作为参数,比如: