jmeter可以批量录入数据吗?如果可以怎么操作?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jmeter可以批量录入数据吗?如果可以怎么操作?相关的知识,希望对你有一定的参考价值。

我想录入一些人员到数据库里,包括姓名、性别、职业、手机号之类的,用Jmeter可不可以录入?

参考技术A 最近刚刚接触到RobotFramework,发现这个工具倒是可以满足我的要求,而且可以结合seleniumLibrary,用来做web的自动化测试相当不错。之前我也接触过selenium,不过感觉那个工具更贴近开发人员使用,有了robotFramework之后,感觉这个工具相当强大,而且是贴近测试人员的。之所以说强大,主要是这些测试脚本都可以用文本格式保存(如txt/html等)

==安装篇==
如果有想学的朋友可以自己下载以下文件安装(Google-code里可以找到大部分的安装文件):
这篇文章的内容比较旧了,最新的安装指南请查看 更新篇
python-2.7.1.msi(首先要有python,请选择将Python加入Path)
wxPython2.8-win32-unicode-2.8.11.0-py27.exe(wxPython,必须要的)
robotframework-2.6.0.win32.exe(然后装robot的Framework)
robotframework-ride-0.38.1.win32.exe(robotFramework的IDE,很不错)
robotframework-seleniumlibrary-2.8.win32.exe(seleniumLibrary)

安装成功后
执行[PythonDir]\Scripts\ride.py
看到界面就是安装成功了。

如果需要AutoIt支持就下载下面2个东东。
AutoItLibrary-1.1
pywin32-216.win32-py2.7.exe

==入门篇==
安装完成了,这个框架可以说是基于keyword的操作,按F5可以看到所有加载的keyword。
首先新增一个project

然后新增suite

然后新增test case,接着在suite层级add library,把selenium library加进来,添加后按F5检验是否添加成功,如图

OK,继续在suite的setting里设置suite启动和结束的keyword,即Start Selenium Server和Stop Selenium Server,他会在运行时帮助我们自动启动seleniumserver。

接下来在test case里添加一个步骤,open browser(一般用selenium做web测试都要用这个方法来打开浏览器),添加后关键字变成蓝色表示找到关键字了,否则可能是拼写错误或者没有加载相应的library。红色表示有一个必选参数要给定输入值,具体参数可以看F5里的keyword说明。

输入参数,第二个参数默认是firefox,不过我没装,就用ie吧。

以上只是一个简单的例子,没有详细说明每个步骤的操作,只是初步介绍。后续再详细介绍

jmeter使用数据库创造批量数据

一,对于工作中创造大量的测试数据一直比较头疼,当然你如果懂python或者java那就比较简单了,除此之外,我们如何搞定测试数据呢?

  1,使用jmeter中的csv组件读取excle表格的数据,设定循环次数就可以搞定,但是这种方法需要我们手动去excel中创造很多数据,比较麻烦

  2,可以直接操作数据库,但是如果关联表太多,也不是很方便。我们先看一下这个方法吧

二,jmeter连接数据库

  1,先在线程组下面的配置原件中添加数据库连接

  技术图片

 

  2,再添加jdbc request

  技术图片

 

   3,准备mysql-connector-java-5.1.31.jar包,放到libext目录中,正常每次打开jmeter都要配置jdbc jar包,这样的操作使jdbc默认配置成功,只需要调用即可(这里配置完了最好重新启动一下jmeter,否则不生效)

  4,数据库连接的配置

  技术图片

 

   注意Dababase URL:             jdbc:mysql://192.168.3.140:3306/interface_one?useUnicode=true&characterEncoding=utf8

  在上面面板中还有个链接名称不能忘记

  技术图片

 

  5,JDBC request的配置

  技术图片

 

   查看结果树中的结果:

  技术图片

 

   数据库中的结果:

  技术图片

 

   很显然数据库中的密码必须是加密的,但是我们这里是明文,不符合规范,那怎么办呢?

  首先我们要知道密码加密的方法,一般在公司中我们去哪里获取加密的方法呢?去询问开发或者自己去拿代码(前提是你有代码拉取权限)。如果你没有权限,开发也不搭理你怎么办呢?我们可以在测试环境找到编译的好的代码包,通过反编译工具进行反编译就可以看到源码,在源码中找到加密的方法即可

  6,操作过程

    1首先提取加密方法,我们需要可以去测试环境上找到已经编译过后的class文件(这个class文件里面必须有加密方法,一般根据文件名可以识别),然后拖到JD-GUI.exe这个反编译工具中,就可以找到加密方法,接着通过idea调试没问题就复制到beanshell采样器中,如图:

    技术图片

    2调用类方法--生成加密的字符串--使用内置函数vars.put存到jmeter里面,作为jmeter的变量

    3调用变量${}

    技术图片

 

     通过for循环可以直接写入很多数据到数据库中,同时还可以实现写入到文件中

  

  

 

  

 

 

  

 

以上是关于jmeter可以批量录入数据吗?如果可以怎么操作?的主要内容,如果未能解决你的问题,请参考以下文章

关于网页登陆 如下图,有没有软件批量录入账号然后批量去登陆测试

怎么用按键精灵将EXCEL表格数据批量录入到网站?

jmeter使用数据库创造批量数据

怎么能批量登录网站并自动操作?

我在一个网站系统有很多账号,需要批量登录进去再录入操作,有没软件可以实现批量录入?

怎么能够批量自动提交网页登陆,自动填表输入?