
# 本地编写JMeter脚本
1. 启动JMeter客户端。
2. 创建线程组。 
   在JMeter客户端左上角"Test Plan"上右击，选择"Add \> Threads(Users) \> Thread Group"，为JMeter测试计划创建线程组，线程组是JMeter工程的基本执行单位。
   图1创建线程组   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352341501.png "点击放大")
   
   
3. 添加请求。 
   右击"Thread Group"，选择"Add \> Sampler \> HTTP Request"，在线程组中添加HTTP请求。
   图2添加HTTP请求   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318462532.png "点击放大")
   
   
4. 配置HTTP请求信息。 
   HTTP请求"Basic"页签配置如下：
   - Protocol：HTTP或HTTPS。
   
   - Server Name or IP：填写域名或IP。
   
   - Port Number：填写服务的端口。对于HTTP协议，默认端口是80；对于HTTPS协议，默认端口是443；如果服务使用其他端口，需手动填写。
   
   - HTTP Request：填写HTTP方法，如GET，POST，PUT，DELETE等。如果是POST请求，需要添加Body体。
   
   - Path：填写服务请求路径。
    
   图3Basic页签配置   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318462516.png "点击放大")
   HTTP请求"Advanced"页签配置，在"Timeouts"设置项中设置超时时间。
   - Connect：客户端连接被测服务的超时时间，默认为20秒，可以设置为10秒。
   
   - Response：连接被测服务之后，被测服务的响应时间，默认为没有限制。
   
   
   图4Advanced页签配置   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352421357.png "点击放大")
   
   
5. 配置HTTP Header信息。 
   JMeter以Thread Group为单位管理HTTP Header，每个Thread Group可以配置一个HTTP Header管理器。右击"Thread Group"，选择"Add \> Config Element \> HTTP Header Manager"添加HTTP Header管理器，在"HTTP Header Manager"右侧面板单击"Add"，添加HTTP Header。
   图5添加HTTP Header   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352421341.png "点击放大")
   
   
6. 配置查看结果树。 
   为了查看响应结果，需要添加监听器。右击"Thread Group"，选择"Add \> Listener \> View Results Tree"，在线程组中添加查看结果树。
   图6添加查看结果树   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318302692.png "点击放大")
   
   
7. （可选）有文件变量时，配置引入文件变量。 
   JMeter支持引入csv格式的文件。csv的第一行为变量名，从第二行开始是数据，格式如下所示：
   图7csv格式   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352421325.png)
   文本形式的格式如下：
   图8文本形式   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318302708.png)
   右击"Thread Group"，选择"Add \> Config Element \> CSV Data Set Config"。单击"Browse"选择所需要添加的csv文件，单击"Open"添加文件。
   图9添加变量文件   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318462548.png "点击放大")
   为了测试引用变量的效果，可以在HTTP Header中引入变量。${变量名}这个格式可以告诉JMeter，变量是从外部读取的。
   图10Header引入变量   
   ![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002318302724.png "点击放大")
   
   
8. 保存测试计划文件，进行脚本调试。 
   单击上方保存按钮![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352341533.png)，配置保存路径和文件名，保存测试任务到jmx文件，将工程文件（jmx）和变量文件（csv）放在同一目录下。jmx文件名只能以汉字、字母、数字、中划线(-)、下划线(-)和点(.)组成，含有不合法文件名的jmx文件无法导入到性能测试服务中。
   单击上方绿色三角按钮![](https://support.huaweicloud.com/bestpractice-cpts/zh-cn_image_0000002352341517.png)执行任务，可以在"View Results Tree"中看到执行结果，包括"Request Body"，"Request Header"，"Response Body"，"Response Header"。
   
   
 
