一、上传/下载的过程。

       上传的过程就是你把你本地的文件,扔到服务器上的这么一个过程。

       下载呢,就是把服务器上的文件拿过来,然后存到你本地的这么一个过程。

       总结一下呢,上传就是你给服务器一文件,下载呢就是你从服务器上拿一文件。

二、jmeter做上传的脚本。

     咱们先把这个过程了解了之后就开始做脚本,上面说了,上传是一个像服务器发送数据的,一般发送数据用post请求。

三、jmeter下载文件。

     3.1 准备工作:

      下载文件呢,其实更简单,就是把一个文件保存到本地就可以,我现在在百度上找了一个图片的url

   3.2 编写脚本流程

      首先添加一个线程组,然后在线程组里面添加一个http请求,因为是获取数据,所有是get请求,写好下载的地址

              1、添加线程组 :右键测试计划,添加-Threads(Users)-线程组;

              2、添加一个http请求:右键线程组,添加-Sampler-HTTP请求;

              3、写好http请求中的url和路径;

        不过这个是下载脚本,下载的话,有一步是要把文件保存到咱们本地的,这个jmeter没有现成的东西可以用,就得咱们自己写beanshell来实现,把文件保存到本地。

        当然你如果要写beanshell的话,你得会它的语法,它就是java写的。不过也不用愁不会写java咋整,这个保存文件的是死格式就这么写,记住就行了,需要下载的时候复制过去就行。

              4、添加beanshell,获取到返回的文件内容,保存到一个文件里面。右键线程组,添加-Sampler-BeanShell Sampler,beanshell代码如下:

import java.io.*;

byte[] result = prev.getResponseData();  //这个是获取到请求返回的数据,prev是获取上个请求的返回

String file_name = "C:\\Users\\bjniuhanyang\\Desktop\\BaiDu.jpg"; //代表存放文件的位置和文件名

File file = new File(file_name);

FileOutputStream out = new FileOutputStream(file);

out.write(result);

out.close(); 

               5、添加一个查看结果树,查看接口调用结果。右键线程组,添加-监听器-查看结果树;

    3.3 脚本实例

协议:http
       服务器名称:imgsrc.baidu.com

       端口号:80 (提示,端口号默认是就是80,可以不用写哦)
       请求类型:get

       路径:/image/c0%3Dshijue1%2C0%2C0%2C294%2C40/sign=6184d4c1f8d3572c72ef949fe27a0952/10dfa9ec8a1363270985411b9b8fa0ec08fac7aa.jpg

     脚本截图如下:

下面这个是http请求里面的,也就是咱们获取图片的

下面这个是beanshell里面的内容,也就是咱们保存文件的操作。

2.4 运行脚本,查看结果

          看下面的图,运行结果,已经可以看到刚才这张图片了,而且请求都是成功的。

最后在桌面上查看到了该文件

jmeter操作 — 文件上传、下载的更多相关文章

  1. jm解决乱码问题-参数化-数据库操作-文件上传下载

    jm解决乱码问题-参数化-数据库操作-文件上传下载 如果JM出果运行结果是乱码(解决中文BODY乱码的问题) 找到JM的安装路径,例如:C:\apache-jmeter-3.1\bin 用UE打开jm ...

  2. Java 客户端操作 FastDFS 实现文件上传下载替换删除

    FastDFS 的作者余庆先生已经为我们开发好了 Java 对应的 SDK.这里需要解释一下:作者余庆并没有及时更新最新的 Java SDK 至 Maven 中央仓库,目前中央仓库最新版仍旧是 1.2 ...

  3. Struts的文件上传下载

    Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...

  4. Selenium2学习-039-WebUI自动化实战实例-文件上传下载

    通常在 WebUI 自动化测试过程中必然会涉及到文件上传的自动化测试需求,而开发在进行相应的技术实现是不同的,粗略可划分为两类:input标签类(类型为file)和非input标签类(例如:div.a ...

  5. 【FTP】FTP文件上传下载-支持断点续传

    Jar包:apache的commons-net包: 支持断点续传 支持进度监控(有时出不来,搞不清原因) 相关知识点 编码格式: UTF-8等; 文件类型: 包括[BINARY_FILE_TYPE(常 ...

  6. SpringMVC文件上传下载

    在Spring MVC的基础框架搭建起来后,我们测试了spring mvc中的返回值类型,如果你还没有搭建好springmvc的架构请参考博文->http://www.cnblogs.com/q ...

  7. salesforce 零基础学习(四十二)简单文件上传下载

    项目中,常常需要用到文件的上传和下载,上传和下载功能实际上是对Document对象进行insert和查询操作.本篇演示简单的文件上传和下载,理论上文件上传后应该将ID作为操作表的字段存储,这里只演示文 ...

  8. Retrofit2文件上传下载及其进度显示

    序 前面一篇文章介绍了Retrofit2的基本使用,这篇文章接着介绍使用Retrofit2实现文件上传和文件下载,以及上传下载过程中如何实现进度的显示. 文件上传 定义接口 1 2 3 @Multip ...

  9. JavaWeb实现文件上传下载功能实例解析

    转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web应用系统开发中,文件上传和下载功能是非常常用的功能 ...

随机推荐

  1. 打败 IE 的葵花宝典:CSS Bug Table

    博主说:本博客文章来源包括转载,翻译,原创,且在文章内均有标明.鼓励原创,支持创作共享,请勿用于商业用途,转载请注明文章链接.本文链接:http://www.kein.pw/?p=35 原文发表于:A ...

  2. Hadoop-2.4.0分布式安装手冊

    文件夹 文件夹 1 1. 前言 2 2. 部署 2 2.1. 机器列表 2 2.2. 主机名 2 2.2.1. 暂时改动主机名 3 2.2.2. 永久改动主机名 3 2.3. 免password登录范 ...

  3. macbook的终端中使用gnu的ls命令

    1.首先,我用的是iterm2终端.方法是:到iterm2.com中下载后,复制到applications文件夹下,就可以了. 2.其次,mac下的ls不是gnu的ls,两者是有区别的,看来开源世界还 ...

  4. 陷阱:C++模块之间的”直接依赖“和”间接依赖“与Makefile的撰写

    参考:http://make.mad-scientist.net/papers/advanced-auto-dependency-generation/ 参考:http://stackoverflow ...

  5. [转]C++ error C2011: “XXX”:“class”类型重定义

    http://blog.csdn.net/m_leonwang/article/details/27678219 尝试修复这个程序的错误: 点击下载源代码文件夹

  6. linux学习笔记3--命令pwd

    Linux中用 pwd 命令来查看”当前工作目录“的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置. ...

  7. HTML中让表单input等文本框为只读不可编辑但可以获取value值的方法;让文本域前面的内容显示在左上角,居中

      HTML中让表单input等文本框为只读不可编辑的方法 有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,如使input text的内容,中国两个字不可以修改   有时候,我们希望 ...

  8. 流媒体服务器开发笔记(2)--RTCP协议介绍

    http://blog.sina.com.cn/s/blog_53061af00100o2no.html ——————————————————————————————————————————————— ...

  9. Tuning 15 Application Tuning

    oracle 是经过多年研发的, 通用的, 质量很高, 而application 是为客户定制的, 一次性的, 质量可能会出问题. 数据库的 move 的含义, 是将老表copy到新的表, 然后将新表 ...

  10. 几种排序算法的java实现

    import java.util.Arrays; /** * 各种排序算法从小到大进行排序 */ public class Test { public static void main(String ...