Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHPAPI客户端的单元测试_Php_Api_Unit Testing_Phpunit_Apiclient - Fatal编程技术网

PHPAPI客户端的单元测试

PHPAPI客户端的单元测试,php,api,unit-testing,phpunit,apiclient,Php,Api,Unit Testing,Phpunit,Apiclient,我正在用php编写一个API客户机,它向API服务器发送请求,以根据API服务器上的ID获取一个人的详细信息。API服务器具有基于令牌的身份验证,当使用正确的ID和令牌进行查询时,此人的详细信息将作为JSON响应返回。我对课程的实施感到满意。然而,当谈到单元测试时,我不太清楚我应该编写什么样的测试用例才是最好的。不幸的是,我无法在同一个网站上找到任何资源。我已经编写了一些测试用例来验证请求参数和查询端点。有谁能对单元测试API客户机做更多的介绍吗?我不是测试专家,但我在创建lib和组件时会进行测

我正在用php编写一个API客户机,它向API服务器发送请求,以根据API服务器上的ID获取一个人的详细信息。API服务器具有基于令牌的身份验证,当使用正确的ID和令牌进行查询时,此人的详细信息将作为JSON响应返回。我对课程的实施感到满意。然而,当谈到单元测试时,我不太清楚我应该编写什么样的测试用例才是最好的。不幸的是,我无法在同一个网站上找到任何资源。我已经编写了一些测试用例来验证请求参数和查询端点。有谁能对单元测试API客户机做更多的介绍吗?

我不是测试专家,但我在创建lib和组件时会进行测试,所以以下是我的建议

通常,当我执行您描述的类似任务时,我会创建一个库作为远程API的外观,这(可能)会简化它们

因此,我有两种不同类型的测试,“单元测试”和“集成测试”:前者是对库组件的测试,用于检查它们是否针对输入中传递的不同数据模型给出了正确的结果,后者用于检查库调用是否正确(例如,内部发出一个或多个远程API请求的“getPersonDetails”)给出正确的结果

在您的情况下,您可以为“getPersonDetails”方法创建一个“集成测试”,以检查远程API(可能是测试环境)是否给出了答案,以及方法的响应是否符合您的预期。 您还可以尝试通过错误的输入数据anche检查来引发正确的异常等


“getPersonDetails”中使用的任何内部组件都可以在“单元测试”中进行测试。

您能分享一些代码吗?