【问题标题】:How to mock a JSON file in PHPUnit / Laravel如何在 PHPUnit / Laravel 中模拟 JSON 文件
【发布时间】: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"
        }
    ]
}

【问题讨论】:

    标签: php json laravel mocking phpunit


    【解决方案1】:

    您可以将 json 保存为测试文件,即。存储/测试/json/test-data.json

    然后在设置测试时检索它:

    $path = storage_path("testing/json/test-data.json") ;
    
    $json = file_get_contents($path); 
    

    【讨论】:

      猜你喜欢
      • 2021-12-23
      • 2018-03-03
      • 2017-01-25
      • 2018-08-01
      • 2018-05-25
      • 1970-01-01
      • 2019-08-07
      • 2014-01-16
      • 2021-09-14
      相关资源
      最近更新 更多