自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 Linux系统下搭建java环境

关于java环境的配置方式两种:一键安装(yum)手动解压安装(tar)Yum安装对于yum安装属于傻瓜式一键安装,简单粗暴。setp1:查看当前的java版本列表yum -y list java*setp2:选择需要的版本进行安装yum install -y java-1.8.0-openjdk-devel.x86_64setp3:检验安装完成java -version如果你想要找到他的安装目录,可以在usr/lib/jvm下面找到!手动解压安装手动安装更能深刻理解

2021-01-15 09:38:28 279

原创 jmeter基础之保存响应数据到文件

关于此功能主要运用于非GUI模式下执行脚本的响应查看,以便于帮助我们更好的判断脚本的执行情况。关于保存响应到文件jmeter存在多种方式,大致分两类jmeter自带插件和beanshell脚本编写,本章节将介绍这两种方式保存数据!保存响应到文件添加监听器–>保存响应到文件观察保存响应到文件配置页面:配置页面参数介绍:Save Successful Responses only:仅保存成功响应Save Failed Responses only:仅保存失败响应Don’t save

2021-01-04 13:44:17 5889 1

原创 linux下mysql密码忘记或mysql中的mysql库消失问题解决

关于linux环境下登录mysql时有可能会存在认证失败情况报错,或这个mysql中默认的mysql库消失的情况,可由以下解决方法进行解决。解决方案:1,关闭mysql的服务service mysqld stop2,屏蔽权限(进入无权限状态)mysqld_safe --skip-grant-table或者mysqld_safe --skip-grant-tables &屏蔽权限后服务器可能处于运行中的状态,这个时候无法进行下一步的操作,这个时候我们需要在新开一个服务器终端。3

2020-12-24 13:59:46 390

原创 Linux环境搭建配置mysql

关于linux环境下如何搭建mysql实际方式可有多种,本文讲述傻瓜式一键部署的方式,可让多数人可简单构建linux下的mysql服务。Yum安装使用 yum install mysql-server 一键安装MySQL服务键入 service mysqld start 启动并初始化服务使用 /usr/bin/mysqladmin -u root password ‘123456’ 修改登录密码关于yum安装第一步可能部分人会出现镜像下无可用包的错误,解决方法:step1:从网上下载mys

2020-12-21 13:30:20 143

原创 Linux系统下搭建python环境

首先linux系统下一般是自带python2环境的,但是目前大多数项目工程python2是不适用的,今天我们就来讲解下如何在linux系统下搭建python3!以上是自带的python2,接下来搭建python3:setp1:下载python3的安装包下载地址:https://www.python.org/downloads/下载命令:wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgzstep2:解压安装包tar -x

2020-12-16 09:16:45 1811

原创 jmeter基础之mysql配置连接

jmeter连接数据库需要借助第三方jar包:mysql-connector-java-8.0.22.jar,Mysql jdbc驱动包版本级别不得低于数据库版本,数据库版本可直接在服务器登录mysql后查看:若使用navicat连接,直接在连接属性中查看数据库版本。Mysql jdbc驱动包可直接在官网下载:https://dev.mysql.com/downloads/connector/j/压缩包下载完成后可将其中的驱动jar包mysql-connector-java-8.0.22.jar放入

2020-12-11 18:57:57 312 1

原创 jmeter基础之MD5加密

接口测试中我们经常会遇到一些接口的请求数据比较敏感,例如登录时的账户密码等,我们又不希望这些数据体现给别人看到,那么我们可以在接口请求时进行加密,今天我们就来了解下jmeter中的加密方式。MD5函数jmeter部分版本字典MD5函数,我们可以直接拿来用,若没有MD5函数可使用插件下载plugins-manager.jar :下载后应用重启,打开函数小助手,可以看到MD5函数:对我们需要传的参数进行函数生成,添加HTTP接口请求:运行接口,查看如下请求:可以看到我们的参数已经进行了

2020-12-11 09:40:29 1382

原创 jmeter基础之定时器介绍及使用(下篇)

关于jmeter定时器我们之前已经了解了其中的几个,接下来我们继续熟悉一下的几个定时器的作用!JSR223定时器JSR223定时器实际可以通过java、JavaScript、beanshell等多种语言去实现我们的定时功能,类似于下面提到的beanshell定时器。添加定时器–>JSR223定时器接下来添加我们之前测试用的两个接口请求,然后编辑以下脚本:Thread.sleep(5000); 意思是指等待5秒,然后我们运行看看结果:可以看到两个接口之间的间隔时间大概在5秒左右!

2020-12-10 13:03:55 262

原创 jmeter基础之定时器介绍及使用(上篇)

我们都知道用户实际进行接口压测或者批量接口调用的时候并不是说一蹴而就的,也是会需要思考及分析数据的时间,并且有些场景之间的调用也有可能是异步的,所以jmeter也提供了多种定时器以便于我们进行接口的测试,接下来我们看下jmeter提供的定时器有哪些?可以看到了jmeter目前支持了9种定时器供我们使用,接下来我们将一一介绍这些定时器的作用及用法。固定定时器根据名称我们也能知道这个定时器的时间是固定的,对作用域内的接口都有一个固定的延迟时间,如果需要单独对某个接口定时可以放在单个请求内。添加定时器–

2020-12-10 13:03:27 1046

原创 jmeter基础逻辑控制器之ForEach控制器

关于jmeter中的逻辑控制器有很多是可以帮助我们在接口测试中解决很多问题的,今天我们来了解一下ForEach控制器,看到这个控制器很多人第一反应是for循环,实际原理也差不多,但是并不等同于jmeter中的for循环控制器!接下来我们来实际了解下ForEach控制器的用法:添加:配置元件-用户定义的变量编辑变量内容:可以看到以上变量格式保持统一,方便下面规律输出。添加:逻辑控制器-ForEach控制器编辑控制器内容:然后我们开始实际写接口,接口添加在ForEach控制器内:以上可

2020-12-10 11:40:36 1546

原创 jmeter基础逻辑控制器之if控制器

jmeter中存在很多逻辑控制器,类似于代码中的if条件控制,for循环等,接下来我们来简单介绍下jmeter中的if条件控制器。接下来我们以获取主题列表接口作为示例:然后将这个接口中的limit参数设置为一个全局变量,添加用户定义的变量然后在线程组中添加一个if条件控制,逻辑控制器–>if控制器,并把这个获取主题列表的接口移动到控制器中接下来我们需要在控制器中编写表达式接下来我们运行结果得到执行了以下接口请求接下来我们可以在添加一次控制器和对应的请求:如果limit我们

2020-12-09 11:43:24 3679

原创 jmeter插件之Dummy Sampler

Dummy Sampler估计有不少人不太了解这是什么东东,实际它是一个取样器,可以用来我们测试练习的模拟器,自己模拟请求与返回。下载与安装:首先我们需要下载一下plugins-manager.jar包,这是jmeter支持插件安装管理的一个jar包,我们可以在这里下载很多我们需要的一些插件。下载地址:https://jmeter-plugins.org/install/Install/下载完成后,我们根据官网介绍把它放到jmeter安装的lib/ext目录下,然后重新启动jmeter。可以看

2020-12-09 11:40:07 1236

原创 jmeter基础之json提取器如何提取多个参数值

关于jmeter中的正则表达式及json提取器可以提取响应值,大家都有所了解,但是往往我们在实际运用中,可能需要上个接口的多个响应值,难道我们要在jmeter中添加多个提取器吗?那么我们今天来了解下如何使用json提取器一次性提取多个参数值。json提取器提取多个值以上是响应数据,我需要把这两个参数都提取出来传给下一个接口的请求,添加json提取器关于json提取器参数介绍:names of created variables :接收值的变量名,多个变量时用分号分隔json path:jso

2020-12-09 11:38:41 15470 7

原创 jmeter基础之正则表达式如何提取多个参数值

关于jmeter使用json提取器可以提取多个响应值,大家都有所了解,那我们今天可以来了解一下如何使用正则表达式提取器提取多个响应值。以上是我们的相应数据,我们可以先通过正则表达式取样,调试出正确的正则表达式以上可以看出我们的正则表达式为:“success”????.+?),“topic_id”:"(.+?)"接下来我们可以添加正则表达式提取器,对其进行如下编辑:以上我们可以看到变量名称我们只写了一个topic,那么我们如何对其进行传参呢,我们可以先添加一个调试取样器进行查看,线程组–>

2020-12-09 10:38:49 10658

原创 jmeter基础之断言及参数的关联性

jmeter参数关联接口测试中经常会碰到,下一个接口的入参是上个接口的出参,企业中不可能实时进行手工改动,那么就需要用到参数的关联,把接口的响应数据,输出给下一个接口。参数关联我们可以使用正则表达式提取器或者是json提取器进行数据的提取。正则表达式():括起来的部分就是要提取的。.:匹配除换行外的任何字符串。+:代表+号前面的字符必须至少出现一次(一次或多次)。?:代表?前面的字符最多可以出现一次,在找到第一个匹配项后停止(0次或1次)。:代表号前面的字符可以不出现,也可以出现一次或者多次

2020-12-08 11:42:21 297

原创 jmeter接口测试基础篇之初步认识及参数化请求

jmeter如何进行接口测试,首先添加线程组,添加http请求,填写接口请求地址,方式,请求类型,请求头,参数等,查看返回结果。首先打开jmeter软件:我们可以选择语言为中文首先添加一个线程针对我们进行接口测试,上述线程数与循环数,我们只需默认1即可,无需改动,然后我们可以在线程组中添加我们所需要进行接口测试的http请求jmeter 发送get请求发起请求我们需要添加结果树,才可以看到请求和返回的数据:jmeter 发post请求post请求方式三种请求类型,不同类型参

2020-12-08 11:32:22 272 1

原创 jmeter基础之目录结构解析及配置文件修改

jmeter安装后进到根目录下,可看到jmeter目录结构为以下展示:backups目录:备份目录,顾名思义每次运行jmeter进行了jmx文件的保存都会再次进行一次备份文件。bin目录:可执行文件目录,bin目录下存放的是一些jmeter可执行的的文件,例如:examples:该目录下存放jmeter官方给的一些例子report-template:该目录下存放一些报告模板templates:该目录存放一些模板,例如:beanshell模板,jdbc数据库模板等jmeter.bat:启

2020-12-08 11:31:37 1127

原创 jmeter及jdk的环境变量配置

jmeter是apache公司基于java开发的一款开源压力测试工具,其内部原理都是源于java的运行,并支持多种外部插件用于接口及性能测试,最主要的还是开源免费,在安装jmeter前必须配置jdk环境。jdk下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html根据自身电脑系统下载,保存在电脑目录中,对该文件进行安装执行:以上运行中会提示安装jre文件,与jdk安装目录放在一起:全部安装完

2020-12-08 11:31:01 2684 2

原创 selenium如何实现文件上传功能

在做web自动化时会碰到文件上传的实现功能,这个时候我们应当如何使用selenium进行文件的上传呢?一,selenium直接上传大家都知道我们在做selenium自动化时,必须要面临的就是页面元素的定位,如果该上传文件功能的html类型为input,例如:<input type="file" name="upload">以上类型的上传文件功能吗,我们可以直接使用selenium中的元素定位+send_keys()方法,括号内传入文件路径,例如:driver.find_element

2020-12-08 10:20:11 5266 1

原创 python异常捕捉处理机制

python中捕捉异常常用句式try…except…try 语句按照如下方式工作;首先,执行 try 子句(在关键字 try 和关键字 except 之间的语句)。如果没有异常发生,忽略 except 子句,try 子句执行后结束。如果在执行 try 子句的过程中发生了异常,那么 try 子句余下的部分将被忽略。如果异常的类型和 except之后的名称相符,那么对应的 except 子句将被执行。如果一个异常没有与任何的 except 匹配,那么这个异常将会传递给上层的 try 中。一个

2020-12-08 10:19:47 237 1

原创 mysql数据库语法大全总结

dos命令链接数据库:mysql -u root -p (root为创建时输入的用户名,p后面跟的是密码,输入密码时并不会显示)建数据库 :create database 数据库名;查看存在的数据库:show databases;使用数据库:use 数据库名;建表:create table tab_name (列); 举例:create table students (id int primary key,name char(20)) default charset=utf8;prim

2020-12-08 10:18:59 1563

原创 python基础面试常问编程问题

求数值以内的质数,合数及个数#质数def zhishu(number): num=0 for i in range(2,number+1): k=True for j in range(2,i): if i==j: continue if(i%j==0): k=False break if(k==T

2020-12-08 10:17:47 171

原创 python中装饰器是如何实现的

装饰器表面意思也大概猜的出来,对主要的某些功能,函数,类等进行装饰的作用,就比如python一个函数已经被别人编写了,我们不能改动别人的代码,又想在调用它的时候,添加一些我们想要用到的功能,装饰器则可以完美的解决这一问题。一,无参数装饰器首先我们先定义一个函数:import timedef sp(): str1 = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime()) print(str1)以上我们可以看到,sp是定义的一个函数

2020-12-08 10:16:56 281 2

原创 python之os模块总结

OS模块简单的来说它是一个Python的系统编程的操作模块,可以用来帮助我们处理文件和目录的作用,下面准备了一些os模块在日常比较常用的方法。首先我们需要先导入os模块:import os输出当前系统平台:print(os.name)>>> 'nt'#若是Windows则输出'nt',若是Linux/Unix,则是'posix'输出当前目录:print(os.getcwd())>>>E:\Python\selenium\Learn\pythonFir

2020-12-08 10:16:39 270 2

原创 接口测试面试题总结

1,目前市面上流行的接口大多有哪几种协议的接口?答:http,https,dubbo,rpc等即可。2,接口的请求方式有哪几种?答:get,post,put,delete,head,Trace,opions等,大多以get和post请求为主3、get和post区别是什么?答:POST和GET都是向服务器提交数据,并且都会从服务器获取数据。区别:(1)传送方式:get通过地址栏传输,post通过报文传输,故而post更相对来说私密性一点(2)传送长度:get参数有长度限制(受限于url长度),

2020-12-07 15:32:06 2969 8

原创 如何使用jsonpath与python结合进行接口响应断言

关于接口响应断言,我们之前了解过jsonschema进行断言的一种方式,今天我们再来了解一下另一种更灵活的方式—jsonpath!{ "store": { "book": [ { "category": "reference", "author": "Nigel Rees", "title": "Sayings of the Century", "price": 8.95 }, { "category": "f

2020-12-07 15:30:03 760

原创 如何使用jsonschema进行接口响应断言

一,JSONSchema的概念JSONSchema是一种用来描述JSON数据的一种JSON数据结构。JSON Schema也有版本,目前的版本有 Draft 7,Draft 6,Draft 4 和Draft 3。使用之前我们先进行cmd安装:pip install jsonschema二,JSONSchema解析2.1,type节点stringnumber(int/float)object(dict)array(list)booleannull{ "type": "string" }

2020-12-07 15:21:29 395

原创 yaml文件解读及接口自动化相结合使用

Yaml文件如何读取与存入数据,目前部分企业使用yaml文件进行接口自动化数据的存储与写入,那么我们今天来了解下如何使用yaml文件与自动化的结合,首先安装yaml库:pip install PyYamlimport yamlyaml1 = """color: 灰黑色int: 5size: 123"""y = yaml.full_load(yaml1) #safe_load(),unsafe_load() 读取yaml文件转为dict格式obj = {"color": u"黑色"

2020-12-07 15:17:26 2102

原创 自动化测试结合logging日志模块

logging日志模块是python自带的内置方法,我们做自动化的时候,如何利用logging模块,进行日志的记录。先来了解一下logging模块:日志五个级别:1,debug 调试信息2,info 关键信息3,warning 警告信息4,error 错误信息5,critical 严重问题信息日志四大组件:Logger 调试器(提供给应用程序的入口)Handler 处理器Formatter 格式器(输出的格式)Filtter

2020-12-07 15:12:24 451

原创 如何使用python+requests进行接口自动化测试

使用python+requests进行接口测试我们已经进行了初步的认识,那么如何进行接口的自动化测试呢,目前企业中接口自动化多以excel,数据库mysql,yaml文件存放接口数据进行循环遍历进行接口请求。若不了解excel及数据库相关操作可阅读之前文章:python如何处理txt及excel文件使用python链接mysql及redis(缓存型数据库)import xlrdimport jsonimport xlutilsfrom xlutils.copy import copyexcDi

2020-12-07 15:04:24 791 2

原创 python+requests接口测试

python也可以进行接口测试,并且比工具更加灵活多变,借助第三方库requests,下载方式:cmd终端输入 pip install requests接口请求方式存在多种,get,post,put,delete等,目前企业中用的最多的为get及post请求,我们这里也主要介绍如何使用python+requests进行post和get请求:Get请求import requestsapiurl="http://39.107.96.138:3000/api/v1/topics"'''请求接口'''

2020-12-07 14:57:05 232 1

原创 python之lambda函数使用

一,lambda函数的概念lambda函数被称为匿名函数,实际就是说没有名称的函数,形式如下:lambda [arg1 [,arg2,.....argn]]:expressionargs指的是参数,expression指条件表达式,根据参数,进行条件表达后输出相应内容。二,lambda简单使用普通用法def detail(x,y): return x*y# lambda用法 s = lambda x,y:x*yprint(s(3,3))以上对比我们可以看出如果我们想计算

2020-12-07 14:45:21 4428

原创 postman基础使用介绍

一,接口测试是什么什么是接口测试,不说广泛的概念,直接电脑打开浏览器,进入开发者工具(F12)随意进入一些网站可以看到下面左侧栏出现了一系列的数据:上面条数据都是一个单独的接口,点击单个接口,右边部分展示出接口的相关信息,请求地址,请求方法,请求头,响应头等等。接口测试具体怎么测主要就是对接口的参数值,响应时间,状态码,返回内容等方面去测试。接口测试我们可以借助一些工具,市面上用的较多的postman,jmeter,我们今天讲下如何使用postman做接口。下载地址:https://www.post

2020-12-07 14:25:21 370

原创 linux必备的常用命令大全

linux的定义:Linux是一个Unix类操作系统,完全开发源码,多用户多任务,服务器(数据库服务器、Web服务器、应用服务器、日志服务器、图片服务器等等)、嵌入式领域(如路由器等需要Linux才能启动)、移动终端(比如安卓手机等、平板),Linux主流版本有:Ubuntu、RedHat、CentOS、SUSE、FreeBSD安卓手机的内核就是linux的。su 切换用户$: 指以普通用户身份登录#:指以root管理员身份登录home 类似于windows 下的c/user相对路径:相

2020-12-07 14:11:20 301

原创 使用python链接mysql及redis(缓存型数据库)

python链接数据库mysql操作,首先我们需要借助第三方库pymysql。cmd终端下载:pip install pymysqlimport pymysql#链接数据库db = pymysql.connect(host='127.0.0.1',user='root',passwd='123456',db='ergou')cursor = db.cursor() #创建游标cursor.execute("select version()") #查询数据库版本version = curs

2020-06-15 19:39:42 615

原创 python如何处理txt及excel文件

txt文件读取首先我们需要新建一个txt文件,在里面可以输入一些内容:我们可以看到上面在当前路径下新建了一个txt文本,并在里面输入了一些内容,那么我们应该如何读取里面的内容呢?f = open(r'./readme.txt','r',encoding='utf-8')print(f.readlines()) # list列表,依次读取,循环遍历即可f.close()我们可以看到上述代码,首先定义一个对象,打开txt文本,'r’是指此文件只读,限制了文件的权限(‘w’–写入权限,会清楚之

2020-06-15 19:37:49 824

原创 pytest生成测试报告及其强大的fixture功能

pytest -html:测试报告生成插件pytest与unittest的区别还有一点是,pytest自带的有测试报告生成的插件,下载pytest生成测试报告的插件,打开电脑终端cmd输入:pip install pytest-html我们如何使用pytest生成测试报告:import pytestclass Testmethod: @pytest.mark.parametrize(('name','age'),[("小明",18),('李雷',20),('韩梅梅',25)]) de

2020-06-15 19:32:34 427

原创 初识pytest框架及其应用原理

目前市面上流行的测试框架有两种unittest以及pytest,接下来我们来学习下pytest,pytest与unittest的区别有什么呢,首先是pytest框架自带生成测试报告的库,我们不需要使用unittest借助第三方的包来进行生成,其次pytest上手容易,并且自带的插件功能十分强大,这是unittest所不具备的,另外就是unittest的坑其实还是比较多的,所以pytest我个人比较主推!首先我们要使用pytest我们需要先安装下pytest,打开电脑终端cmd,pip install p

2020-06-12 13:22:05 6941

原创 unittest框架及测试报告生成

企业中web自动化测试不仅仅是面向过程式的编写,我们需要将其封装写在类中,并在运行后生成测试报告,目前市面上比较流行的框架有unintest单元测试框架以及pytest框架,今天我们来了解下unittest框架的使用及原理!首先我们可以简单的看下一个小的demo:通过上图,首先我们看到我们要使用unittest的框架,我们需要先继承这个框架,(关于类与方法的模块,同学们可以参考之前课程python方法及面向对象了解),然后我们在执行的时候用的是下面的main方法进行运行的。首先我们会观察到,上面三个方

2020-06-12 13:17:17 1474

原创 selenium之web自动化模拟操作(窗口,鼠标,键盘,js)

selenium自动化在进行浏览器驱动的同时,会有一些相关的模拟行为的操作,例如窗口的操作,鼠标的操作,键盘的操作,javascript相关操作!窗口操作首先我们在操作浏览器的时候,会进行一下窗口的放大与缩小,关闭浏览器,退出浏览器,后退浏览器等相关操作!driver = webdriver.Chrome() # 打开谷歌浏览器driver=webdriver.Firefox() # 打开火狐浏览器driver.get() # 打开某网页,括号里放url地址driv

2020-06-12 13:13:27 829

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除