【发布时间】:2020-02-06 02:54:02
【问题描述】:
我很难测试返回方法的内容类型。成功返回string or int,失败返回array。所以像这样的代码
public function createAddressBook($bookName)
{
if (true)
{
return 'OK';
}
return ['error' => 'FAIL'];
}
该方法的真正代码是对新书 ID 的 API 请求,即int or string,我不知道会返回什么值。我的测试代码是这样的:
public function setUp()
{
$this->stub = $this->createMock(\My\Class::class);
}
public function tearDown()
{
$this->stub = null;
}
public function testCreateAddressBook()
{
$this->stub->method('createAddressBook')->with('TestBookName');
$result = $this->stub->createAddressBook('TestBookName');
//what to do now?
}
我的问题是如何测试返回值类型的方法?
【问题讨论】:
标签: php unit-testing testing phpunit