
# 导出PerfTest测试工程文件的参数说明
表1请求类型为思考时间 
| 参数名称 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|
| name | 思考时间的名称，可修改。                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| t    | 持续时间（毫秒）。 思考时间是指用户在执行两个连续操作期间的等待时间。例如用户在登录和搜索之间停留的时间。 例如某事务每运行一次响应时间为 0.5 秒。 - 如果希望每秒执行两次事务请求：则不添加请求信息类型为"思考时间"的事务请求信息。  - 如果希望每秒只执行一次事务请求：思考时间调整为 1 秒。如果思考时间设置为 1 秒而响应时间大于 1 秒，则思考时间不会生效，按响应时间发送压测请求。   |
   
表2请求类型为报文 
| 参数名称            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|
| name            | 报文的名称，可修改。                                                                                                                                                                                                                                                                                                                                                                                                                              |
| http_version    | 协议类型。 支持HTTP、HTTPS、TCP和UDP。                                                                                                                                                                                                                                                                                                                                                                               |
| 当请求类型为HTTP和HTTPS时，设置以下参数。                                                                                                                                                                                                                                                                                                                                                                                                                                ||
| method          | 支持GET、POST、PATCH、PUT和DELETE。                                                                                                                                                                                                                                                                                                                                                                                                            |
| return_timeout  | 发送请求，等待服务器响应的超时时间。 如果不设置此参数，默认响应超时时间为5000ms。                                                                                                                                                                                                                                                                                                                                                            |
| URL             | 发送请求的URL地址，比如"http://域名/路径"，也可以包含参数的部分"http://域名/路径?key1=value1\&key2=value2"。                                                                                                                                                                                                                                                                                                                                                          |
| headers         | 由关键字/值对组成，请求头部通知服务器有关于客户端请求的信息，"头域"的说明请参见[头域说明](https://support.huaweicloud.com/usermanualnew-cpts/cpts_02_0022.html)。                                                                                                                                                                                                                                                                                                                  |
| 报文内容            | 实体的主体部分包含一个由任意数据组成的数据块，并不是所有的报文都包含实体的主体部分。 如果已设置全局变量或响应提取的局部变量，可在报文内容部分引用变量，执行压测任务过程会将报文内容中的变量值动态替换为指定的值。                                                                                                                                                                                                                                                                                                 |
| 当请求类型为TCP时，设置以下参数。 TCP类型的报文暂不支持响应提取功能。                                                                                                                                                                                                                                                                                                                                                                                     ||
| IP              | 发送请求到被测服务器的IP地址。                                                                                                                                                                                                                                                                                                                                                                                                                        |
| port            | 发送请求到被测服务器的端口号。                                                                                                                                                                                                                                                                                                                                                                                                                         |
| connect_timeout | 发起连接，服务器无响应的超时时间。                                                                                                                                                                                                                                                                                                                                                                                                                       |
| return_timeout  | 连接建立成功，等待响应返回的超时时间。                                                                                                                                                                                                                                                                                                                                                                                                                     |
| 连接设置            | - 重复使用连接：请求响应完成后，不断开连接，复用连接发送接收下一次请求响应。  - 关闭连接：每次完成请求响应完成后，断开连接，下一次重新建立连接。                                                                                                                                                                                               |
| check_end_type  | 通过返回结束设置，来判断本次请求的响应内容是否已经接收完成。结束符建议设置一个唯一的结束标记，如果设置的结束符在响应内容中存在多个，当接收到第一个结束符时，就认为响应内容已经接收完成，这样接收的响应数据就不完整。 - 返回数据长度：设置返回数据的长度，单位字节。当接收到此长度的响应内容时，数据接收完成。    - 结束符：设置返回数据的结束标记。当接收到结束符时，数据接收完成 。   |
| body            | 实体的主体部分包含一个由任意数据组成的数据块，并不是所有的报文都包含实体的主体部分。 内容格式：请根据被测服务器的业务请求内容，选择"字符串"或"16进制码流"。16进制码流的内容取值范围为"0\~9"和"a\~f"，且总字符个数为双数。 如果已设置全局变量或响应提取的局部变量，可在报文内容部分引用变量，执行压测任务过程会将报文内容中的变量值动态替换为指定的值。                                                                                                                                                                                        |
   
表3请求类型为响应提取 
| 参数名称          | 描述                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|
| name          | 变量的名称，命名必须唯一，响应提取的值赋予此变量。                                                                                                                                                                                                                                                                                                                                                                                                        |
| range         | 响应提取内容的范围。 - 报文内容  - 头域  - URL  - 响应码   其中"报文内容"、"头域"、"URL"可通过正则表达式进行内容提取。                   |
| regexp        | 正则表达式是对字符串操作的一种逻辑公式，就是用事先定义好的一些特定字符、及这些特定字符的组合，组成一个"规则字符串"，这个"规则字符串"用来表达对字符串的一种过滤逻辑。 完整的正则表达式由两种字符构成：特殊字符（special characters）称为"元字符"（meta characters）；其他为"文字"（literal），或者是普通文本字符（normal text characters，如字母、数字、汉字、下划线）。元字符的说明请参见[正则表达式元字符](https://support.huaweicloud.com/usermanualnew-cpts/cpts_02_0036.html)。 "()"表示提取，对于您要提取的内容需要用小括号括起来，每个"()"之间的内容表示一个子表达式。 |
| match_index   | 在正则表达式已提取的内容中，获取第几个匹配的内容，该参数值不可设置为0。 取值范围：正整数。                                                                                                                                                                                                                                                                                                                                                   |
| exp_index     | 表示解析到的第几个子表达式的值。 - 取值为0表示匹配整个正则表达式。  - 取值为1表示匹配正则表达式的第一个子表达式即第一个"()"提取的内容。   取值范围：自然数。 通过"正则表达式"和"第几个匹配项"提取出内容后，再通过"表达式取值"获得最终的提取内容。                                                        |
| JSON Key Name | 请输入需要获取的键名。 例：{key:{"key1":"v1","key2":\["v2","v3"\]}}，如果想取出"v2"，则输入key.key2\[0\]                                                                                                                                                                                                                                                                                                                  |
| default       | 正则匹配失败时，取的值。                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
表4请求类型为检查点 
| 参数名称          | 描述                                                                     |
|:---|:---|
| name          | 检查点的名称，可修改。                                                            |
| value         | 响应报文携带的HTTP/HTTPS/TCP/UDP协议响应状态码，通常包括1XX，2XX，3XX，4XX，5XX。              |
| header_checks | HTTP/HTTPS/TCP/UDP协议的Header部分。                                         |
| body_checks   | HTTP/HTTPS/TCP/UDP/MQTT协议的Body部分，为HTTP/HTTPS/TCP/UDP/MQTT协议请求、响应的负载部分。 |
   
表5新增测试工程 
| 参数名称        | 描述         |
|:---|:---|
| name        | 测试工程的名称。   |
| description | 测试工程的相关描述。 |
   
表6新增事务 
| 参数名称     | 描述                                                                          |
|:---|:---|
| name     | 事务名称。                                                                       |
| contents | 请求信息内容。 在该事务下可以添加事务请求信息，您可以根据业务需求添加多个事务请求信息。 |
   
表7新增任务 
| 参数名称      | 描述                                                                                               |
|:---|:---|
| issue_num | 并发用户。 并发用户数指在同一时刻内，对系统进行业务操作的用户数量，在性能测试服务中为用户在定义测试任务阶段设置的虚拟用户数。 |
| name      | 阶段名称。 设置一个符合业务场景的名字，比如首页测试。                                      |
| time      | 持续时间（s）。 本阶段压测执行的最长时间。                                            |
| count     | 发送总次数。 该事务在一次任务的运行中，将按照运行次数计算，到达设定数值，该任务下此事务的性能测试将终止。             |
   
表8新增全局变量 
| 参数名称          | 描述                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|
| name          | 全局变量的名称。                                                                                                                                                                                                                                                                                                                                 |
| variable      | 全局变量值。 变量的内容，在压测时将以明文传输，请谨慎输入，注意数据安全。                                                                                                                                                                                                                                                                      |
| variable_type | 全局变量类型。 变量类型为整数时，输入变量值范围。 压测任务运行时会读取对应全局变量范围内的值，针对每个虚拟用户，依次轮询变量值，即第一个虚拟用户取变量的第一个值，第二个虚拟用户取第二个值，依顺序取值，不够则循环。 您可以根据业务需求添加多个变量值。 压测任务运行时会读取对应全局变量的参数值，针对每个虚拟用户，依次轮询变量值，即第一个虚拟用户取变量的第一个值，第二个虚拟用户取第二个值，依顺序取值，不够则循环。 |
   
