鼻子测试 - 文件上传
如果想要测试一个Pylons控制器(使用Nose测试框架),这个控制器需要处理一个作为POST参数的文件上传,应该怎么做呢?
1 个回答
4
像这样:
class TestUploadController(TestController):
// ....
def test_upload_files(self):
""" Check that upload of text file works. """
files = [("Filedata", "filename.txt", "contents of the file")]
res = self.app.post("/my/upload/path", upload_files = files)
上传文件通常需要用户登录,所以你可能还需要在调用 self.app.post() 时传递一个叫 "extra_environ" 的参数来绕过这个限制。
想了解 self.app.post() 接受哪些参数,可以查看 paste.fixture 的文档。