我正在为使用 SOAP 的 PHP 库编写单元测试。测试用例中有两个测试。
该库在第二个单元测试中出现以下消息(我正在使用 PHPUnit):
SoapClient::__call(): supplied argument is not a valid sdl resource
/test/SOAPLib.php:186
/test/SOAPLibTest.php:56
我正在测试的库的第 186 行是:
$issue = $client->getIssueById($auth_token, $id);
当从任何其他脚本以通常的方式调用时,这不会失败 - 只有在第二个单元测试中使用时才会失败。这意味着我的第二个 SOAP 调用中的全局变量存在某种身份验证或令牌错误。
UnitTest 文件的第 56 行是:
list($summary, $pri) = \SOAPLibTest\get_issue_by_id($id);
我在 PHP 手册中查找了 SoapClient::_ call(): ,它说该函数已弃用,我应该改用 SoapClient:: _soapCall 。问题是我不知道如何改变它。
尝试更新 php-soap 报告我已经是最新的。
我真的被这个难住了,而且谷歌似乎没有立即提供任何帮助。
非常感谢, ns