访问第三方API时Symfony CLI命令的PHPUnit测试失败

时间:2018-06-28 03:03:39

标签: unit-testing symfony testing phpunit symfony-2.8

我有一个适用于我的Symfony 2应用程序的PHPUnit测试,该测试位于以下行:

if ($subscriptions = $subscriptionEngine->getAllSubscriptions($site->getOwner())) {

错误是:

Sorry, we couldn't find the site SITEKEY

我可以理解为什么会这样,因为我的parameters.yml.dist包含以下内容:

subscriptionengine.site: SITEKEY

我的问题是我应该创建一个测试API密钥/站点密钥进行测试还是应该根本不进行测试?

该测试正在测试调用Symfony CLI命令,该命令除其他外还调用此第三方API。我的方法是错误的还是只是创建仅供PHPUnit使用的测试键那么简单?

1 个答案:

答案 0 :(得分:0)

以下作品。

$subEngine = $this->getMockBuilder('\AppBundle\Services\SubEngine')
->disableOriginalConstructor()
->getMock();
$subEngine->expects($this->once())->method('getAllSubscriptions');

请从Jason Roman和scyrma的代码中引用以上注释。