+
+ + +
+
+
+ +
+
+
+ + + +
+
+ + + +

文件上传场景

+ +

对于上传文件类型的测试场景,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.v2.yml

+ + + + + + + + + + +
+
+
+