如何在 PHPUnit / Laravel 中模拟 JSON 文件
Posted
技术标签:
【中文标题】如何在 PHPUnit / Laravel 中模拟 JSON 文件【英文标题】:How to mock a JSON file in PHPUnit / Laravel 【发布时间】:2018-10-10 10:21:56 【问题描述】:我创建了一个服务,其中从外部源检索 JSON 并进行查询。我希望能够独立于服务测试使用此服务的功能。如何在 php 单元测试中模拟 JSON 文件以测试这些功能? JSON 文件格式如下:
"data": [
"title": "Development",
"children": [
"title": "Settings",
"channel_types": [
"title": "Network"
]
,
"title": "Testing",
"channel_types": [
"title": "Social"
]
],
"created_at": 1523464038,
"updated_at": 1523464038,
"id": "5ace37664e1d4400a04ffaf2"
]
【问题讨论】:
【参考方案1】:您可以将 json 保存为测试文件,即。存储/测试/json/test-data.json
然后在设置测试时检索它:
$path = storage_path("testing/json/test-data.json") ;
$json = file_get_contents($path);
【讨论】:
以上是关于如何在 PHPUnit / Laravel 中模拟 JSON 文件的主要内容,如果未能解决你的问题,请参考以下文章