Files
httprunner/docs/prepare/upload-case.md
2020-04-09 12:06:34 +08:00

1.5 KiB
Raw Blame History

对于上传文件类型的测试场景HttpRunner 集成 requests_toolbelt 实现了上传功能。

在使用之前,确保已安装如下依赖库:

使用内置 upload 关键字可轻松实现上传功能适用版本2.4.1+)。

- test:
    name: upload file
    request:
        url: http://httpbin.org/upload
        method: POST
        headers:
            Cookie: session=AAA-BBB-CCC
        upload:
            file: "data/file_to_upload"
            field1: "value1"
            field2: "value2"
    validate:
        - eq: ["status_code", 200]

同时你也可以继续使用之前描述形式适用版本2.0+)。

- test:
    name: upload file
    variables:
        file: "data/file_to_upload"
        field1: "value1"
        field2: "value2"
        m_encoder: ${multipart_encoder(file=$file, field1=$field1, field2=$field2)}
    request:
        url: http://httpbin.org/upload
        method: POST
        headers:
            Content-Type: ${multipart_content_type($m_encoder)}
            Cookie: session=AAA-BBB-CCC
        data: $m_encoder
    validate:
        - eq: ["status_code", 200]

参考案例:httprunner/tests/httpbin/upload.yml