Codeception - 通过REST sendPost发送文件

时间:2014-11-17 18:45:14

标签: php codeception

首先,我对编程几乎全新,对代码和PHP完全陌生。

我想知道是否有人可以帮我解决如何使用codeception在REST模块http://codeception.com/docs/modules/REST#sendPOST中使用sendPost方法发送文件。

帮助文件描述了通过阵列发送它,但老实说无法搞清楚。

我能提出的最明智的方法是以下

$I->sendPost(array("filename"))

就像我说的那样,完全是新的。

该文件位于已安装Codeception的目录中,因此我认为我不需要指定它的位置。我也知道如何在没有附件的情况下发送帖子,而不是附带文件的帖子。

我希望有足够的信息。

道歉,如果不是。

2 个答案:

答案 0 :(得分:5)

我会将文件放入tests / _data目录,然后使用codecept_data_dir获取它的路径:

$I->sendPOST('/my-endpoint', ['field' => 'value'], [ 'someFile' => codecept_data_dir('file.png')]);

答案 1 :(得分:1)

我尝试了Jesper Jonsson建议的方法,但它对我不起作用。在浏览了Codeception框架的源代码之后,我找到了我的回答here中描述的另一个解决方案。简而言之,您应该将$ _FILES数组的模拟作为sendPOST()的第三个参数。