PHPSpec 应该 return 正确的值
PHPSpec should return correct value
我对 phpspec 函数有问题 - shouldReturn。我有一个创建图像对象的工厂,我想测试那个工厂。
public function create($imageParams)
{
$image = new Image;
$image->setName($imagesParams['name']);
return $image;
}
phpspec:
public function it_create_image_object()
{
$image = new Image;
$image->setName('Example Name');
$imageParams = ['name'=>'Example Name'];
$this->create($imageParams)->shouldReturn($image);
}
PHPSpec throw Exception : it create image object
expected [obj:App\ImagesBundle\Entity\Images], but got
[obj:AppImagesBundle\Entity\Images].
为什么 PHPSpec 抛出异常而不是 return 绿灯?
规范 class 将永远无法工作,因为您无法存根在规范 class 中实例化的对象。
在您的规范测试中,您必须检查返回的类型和值,如下所示:
public function it_create_image_object()
{
$imageParams = ['name'=>'Example Name'];
$image = $this->create($imageParams);
$image->getName()->shouldReturn('Example Name');
$image->shouldHaveType('App\ImagesBundle\Entity\Images');
}
我对 phpspec 函数有问题 - shouldReturn。我有一个创建图像对象的工厂,我想测试那个工厂。
public function create($imageParams)
{
$image = new Image;
$image->setName($imagesParams['name']);
return $image;
}
phpspec:
public function it_create_image_object()
{
$image = new Image;
$image->setName('Example Name');
$imageParams = ['name'=>'Example Name'];
$this->create($imageParams)->shouldReturn($image);
}
PHPSpec throw Exception : it create image object expected [obj:App\ImagesBundle\Entity\Images], but got [obj:AppImagesBundle\Entity\Images].
为什么 PHPSpec 抛出异常而不是 return 绿灯?
规范 class 将永远无法工作,因为您无法存根在规范 class 中实例化的对象。 在您的规范测试中,您必须检查返回的类型和值,如下所示:
public function it_create_image_object()
{
$imageParams = ['name'=>'Example Name'];
$image = $this->create($imageParams);
$image->getName()->shouldReturn('Example Name');
$image->shouldHaveType('App\ImagesBundle\Entity\Images');
}