自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 PO模型

一、介绍在自动化中,Selenium自动化测试中有一个PageObject(思想与面向对象的特征相同),通常PO模型可以大大提高测试用例的维护效率二、优点页面对象与用例分离,使得我们更好的复用对象 可复用页面的方法代码会变得更加优化 PO提供了一种业务流程与页面元素操作分离的模式,这使得测试代码变得更加清晰 更加有效的命令方式使得我们更加清晰的知道方法所操作的UI元素,便于代码维护三、PageObject设计模式在PO模式中抽离封装集成一个BasePage类,该基类应该拥有一个只

2022-04-29 01:18:44 661

原创 web自动化测试之Selenium

一、Selenium自动化测试框架

2022-04-29 00:21:40 991

原创 web自动化测试

一、自动化测试1.概念:软件自动化测试就是通过测试工具或者其他手段,按照测试人员的预定计划对软件产品进行自动化测试,他是软件测试的一个重要组成部分,能够完成许多手工测试无法完成或者难以实现的测试工作,正确合理的实施自动化测试,能够快速,全面的对软件进行测试,从而提高软件质量,节省经费,缩短软件的发布周期...

2022-04-24 21:34:16 401

原创 Jmeter+Ant+Jenkins持续化

一、Ant1.介绍:apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具2.优点:跨平台性。Ant是纯Java语言编写的,所以具有很好的跨平台性 操作简单。Ant运行时需要一个构建文件(build.xml),由于是XML格式的文件,所以很容易维护和书写,而且结构很清晰 Ant通过调用target树,就可以执行各种task。每个task实现了特定接口对象 由于Ant的跨平台性和操作简单的特点,它很容易集成到一些开发环境中去3.配置ant①下载ant:A

2022-04-21 22:36:06 674

原创 requests接口测试

一、介绍requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到,Requests是Python语言的第三方的库,专门用于发送HTTP请求二、前提在当前项目安装requests包:pip install requests三、get请求1.无参请求:r = requests.get('http://www.baidu.com')2.有参请求:#方式一:参数和路径分开param = {'key1':'value1','key.

2022-04-21 01:37:42 1624

原创 Python单元测试-pytest

一、Pytest1.前提:需要安装pytest2.介绍:unittest是python自带单元测试模块,除生成测试报告有区别,其余步骤基本一致Python单元测试-unittest2_彭俞伟的博客-CSDN博客3.安装命令:pip install pytest pytest --version 检验是否安装成功 pip list 查看当前项目下所有的包二、命名规则Pytest单元测试中的类名和方法名必须是以test开头 执行中只能找到test开头的类和方法,比unit..

2022-04-19 22:15:32 970

原创 Python单元测试-unittest2

一、实际操作(以计算加减为例)1.步骤:①开发人员创建一个计算加减的py文件,并进行代码编辑#创建一个计算类class CalcClass(): #创建加法方法 def add(self,a,b): return a+b #创建减法方法 def reduce(self,a,b): return a-b#自测if __name__ == '__main__': c=CalcClass() print(c.ad

2022-04-19 01:19:54 960

原创 Python单元测试-unittest

一、单元测试、集成测试、功能测试1.单元测试:颗粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”;是指对软件中的最小可测试单元进行检查和验证2.集成测试:介于单元测试和系统测试之间,一般由开发小组采用白盒+黑盒的方法来测试,既验证“设计”又验证“需求”。主要用来测试模板与模板之间的接口,同时还要测试一些主要的业务功能。3.功能测试:颗粒度最大,一般由独立的测试小组采用黑盒的方式来测试,主要测试系统是否符合需求规格说明书4.白盒测试和黑盒测试①白盒:主要应用于单元测

2022-04-18 22:23:34 546

原创 Python-面向对象3

一、私有权限1.封装的意义:将属性和方法放到一起做为一个整体,然后通过实例化对象来处理 隐藏内部实现细节,只需要和对象及其属性和方法交互就可以了 对类的属性和方法增加访问权限控制2.私有权限:在属性名和方法名 前面加上两个下划线 __类的私有属性和私有方法,都不能通过对象直接访问,但是可以在本类内部访问 类的私有属性和私有方法,都不会被子类继承,子类也无法访问; 私有属性和私有方法往往用来处理类的内部事情,不通过对象处理,起到安全作用#创建人类class Person():

2022-04-17 23:24:41 346

原创 Python-面向对象2

一、继承1.定义:在程序中,继承描述的是多个类之间的所属关系 如果一个类A里面的属性和方法可以复用,则可以通过继承的方式,传递到类B里。 那么类A就是基类,也叫做父类;类B就是派生类,也叫做子类2.单继承:子类只继承一个父类 子类在继承的时候,在定义类时,小括号()中为父类的名字 父类的属性、方法,会被继承给子类3.多继承:子类继承多个父类,也继承了所有父类的属性和方法 如果多个父类中有同名的属性和方法,则默认使用第一个父类的属性和方法(根据类的魔法属性mro的顺序来查找)

2022-04-15 21:30:47 729

原创 Python-面向对象1

一、面向过程和面向对象1.面向过程:是一种以事件为中心的编程思想,更关注过程。简单的问题可以用面向过程的思路来解决,直接有效,但是当问题的规模变得更大时,用面向过程的思想是远远不够的。所以慢慢就出现了面向对象的编程思想。优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。 缺点:不易维护、复用和拓展2.面向对象:世界上的每个人或事务都能看成一个对象,每个对象都有自己的属性和行为,对象与

2022-04-14 17:22:06 411

原创 基础理论手抄

2022-04-13 21:34:36 277

原创 Python-异常

一、语法try:<语句> #正常运行的代码except <预知的异常类型>:<语句> #在try中产生异常后要执行的内容else:<语句> #没有异常发生要执行的内容二、作用try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。 如果你不想在异常发生时结束你的程序,只需在try里捕获它。三、使用except不带异常类型try: 正常的操...

2022-04-13 00:36:54 488

原创 Python-文件操作

一、文件①定义:就是用来存储数据的。比如图片、文本文档、Excel文档、压缩包、视频等②作用:保存数据存放在磁盘,通常可以长久保存。在计算机磁盘中保存的文件是通过目录来组织和管理的。③好处:把数据存储起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力二、文件的打开与关闭1.定义:在python中,使用open函数,可以打开一个已经存在的文件,或者新建一个文件2.文件的打开方式:打开方式 解释 r 打开一个文件用于只读。文件的指针将会放在文件的开

2022-04-12 12:07:26 658

原创 Python-函数

一、什么是函数在开发程序时,需要某块代码多次,为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块,组织为一个小模块,这就是函数二、定义和调用1.格式:#定义函数def 函数名(): 执行语句#调用函数函数名()2.案例:#定义函数def function(): print("Hello Python!")#调用函数function()三、参数1.位置参数①格式:def 函数名(参数1,参数2): 代码块函数名(值1...

2022-04-11 21:03:09 609

原创 Python-公共方法

一、运算符#+#字符串合并str1="abc"str2="def"print(str1+str2)#元组合并myTuple1=("lyw",16,"rapper")myTuple2=("syx",18,"singer")print(myTuple1+myTuple2)#列表合并myList1=["lyw",16,"rapper"]myList2=["syx",18,"singer"]print(myList1+myList2)#*#字符串复制str="abc"pri

2022-04-10 21:33:21 353

原创 Python-集合

一、定义集合是无序的,集合中的元素是唯一的,集合一般用于元组或者列表中的元素去重,还可以计算交集、差集、并集等。#去重#运行结果为{1,2,3,4,5}num={1,2,3,4,5,1,1,1}print(num)二、格式格式一:变量名=set(元素),一次只能存一个值,但会把这个值拆分存放 格式二:变量名={元素,元素,,...},为空默认是字典,所以要设置空集合用set的方式#用set存值#一次只能存一个值,但会把这个值拆分存放name=set("刘耀文")print(

2022-04-10 20:07:48 506

原创 Python-字典

一、格式变量名={key1:value,key2:value,...}二、操作info={"name":"刘耀文","age":16,"sex":"男"}1.访问字典①定义:根据key访问value,key不存在报错。也可通过get方法访问,key不存在显示None,也可以自定义报错信息②案例:#根据key访问值,key不存在报错print(info["name"])print(info["name123"])#根据key访问值,key不存在显示为Noneprint(in

2022-04-09 17:16:55 271

原创 Python-元组

一、定义Python的元组与列表类似,不同之处在于元组的元素不能修改二、格式变量名=(,,,...)三、操作myTuple=(11,44,55,66,33,"a","c",66)1.访问元组①定义:通过索引取数据②案例:#索引存在print(myTuple[2])#索引不存在,报错print(myTuple[100])2.查询个数①定义:count查询元素出现的个数②案例:#查询个数 没有则返回0print(myTuple.count(66))p

2022-04-09 11:53:11 306

原创 Python字符串和列表小练习

题目一:1. 给定一个字符串str = "helloworld",利用所学字符串的切片知识,反转字符串;2. 给定一个字符串str = "my name is baoabo",将" "(空格)替换为",",并输出显示;3. 给定一个字符串str = "HELLO WORLD HELLO PYTHON",将str中所有大写字符为小写4. str = " "(空格),li = ["lisi","love","xuexi"],将li中每个字符后面插入str,构造出一个新 的字符串并输出题目二

2022-04-08 22:54:08 419

原创 Python-列表

一、列表的介绍1.格式:变量=[,,,...]2.例题:#存字符串类型nameList=["刘耀文","邓紫棋","张国荣"]#存数字类型ageList=[1,2,3]#嵌套列表nameList=["刘耀文","宋亚轩",["邓紫棋","邓伦"]]#混合类型myList=["刘耀文",16,["sing","dance"]]二、列表的相关操作name="刘耀文"name1=["sing","dance","rap"]name2=[16,183,43,18]1

2022-04-08 21:32:56 334

原创 Python-字符串

一、字符串的定义双引号或者单引号中的数据,就是字符串二、输入输出#输入语句age=int(input("请输入您的年龄:"))#输出语句print("您的年龄为%d"%age)三、索引字符串中的索引是从0开始的,最后一个元素的索引是-1四、切片1.定义截取操作的对象其中一部分的操作2.适用范围字符串、列表、元组都支持切片操作3.语法[起始下标:结束下标的后一位:步长] 选取的区间从起始位开始,到结束位的前一位结束(不包含结束位本身),步长表示选取间隔4.例

2022-04-08 12:02:38 351

原创 Python基础语句

一、判断语句1.if语句①格式:if 判断条件: 满足条件后的内容②例题:#年纪大于等于18岁显示已成年#定义变量age=20#条件语句if age>=18: print("已成年")注:代码的缩进为1个tab键或4个空格,如上print前面的缩进为一个tab键2.if-else语句①格式:if 判断条件: 满足条件的内容else: 不满足条件的内容②例题:#年纪大于等于18岁显示已成年,否则显示未成年#

2022-04-07 11:51:44 4862

原创 Python入门小练习

题目一:使用格式化输出完成如下输出操作:================================== 姓名: xuanGe QQ:xxxxxxx手机号:131xxxxxx 公司地址:北京市xxxx==================================题目二:模拟银行卡柜台取钱,完成如下操作 请输入银行卡号:1234567890 您输入的银行卡号是1234567890 请输入银行卡密码:123456 您输入的银行卡密码是:123456...

2022-04-06 23:57:26 226

原创 Python入门

一、Python的优缺点优点:规范的代码,简单,易学,高层语言,跨平台(可移植性强),支持面向对象编程,丰富的库等优点 缺点:执行效率慢,这个是解释型语言所通有的二、Python的下载与安装Python的下载:Welcome to Python.orgPyCharm(客户端)的下载:Download PyCharm: Python IDE for Professional Developers by JetBrains三、运行Python方式一:python交互模式操作步骤:

2022-04-06 17:22:23 493

原创 Jmeter压测

一、安装插件(jmeter本身不能监测cpu、内存和吞吐量)将下载好的jar包放在jmeter/lib/ext目录下在jmeter中以jp@gc开头的都是第三方插件二、①创建一个监听cpu和内存的监听器PerfMon Metrics Collector②在本地启动serveragent(服务代理):默认端口4444,监听本地的服务。双击serverAgent.bat启动③配置PMC监听器④创建一个JDBC Request(输入sql语句)⑤创建一个JDBC连接

2022-04-01 21:08:47 4486 1

原创 性能测试总结

一、如何进行性能测试?首先拿到接口文档,梳理业务,将业务中的接口填充在jmeter,然后增加并发量,我们关注性能指标(内存,CPU,响应时间,并发量,错误率,吞吐量)二、如何实现接口关联json提取器:在第一个接口中右键添加后置处理器中的json提取器,然后填写变量名和json表达式,在第二个接口中通过${变量名}引用正则表达式:在第一个接口中右键添加后置处理器中的正则表达式,然后填写变量名和正则表达式,在第二个接口中通过${变量名}引用三、jmeter中常见的断言json断言:只用

2022-04-01 01:30:39 88

原创 Jmeter参数化

方式一:配置元件操作步骤:①右击接口→配置元件CSV→填写CSV参数→用${变量名}获取值→设置断言验证结果→发送请求方式二:函数助手对话框操作步骤:①点击工具→函数助手对话框→选择读取csv函数→选择本地文件路径→根据索引获取对应的值...

2022-04-01 00:16:28 231

原创 Jmeter组件2

一、断言1.作用:预期结果和实际结果对比2.常用的几种断言:①响应断言:右击请求添加一个断言→输入想要测试的相应内容→执行请求(在结果树通过为绿,不通过为红)②Json断言(只能测json格式的数据)③XPath断言(前端的断言,用HTML语法)...

2022-03-31 01:34:28 4370

原创 Jmeter组件1

一、线程组1.线程组是什么进程:一个正在执行的程序对应一个进程 线程:一个进程有多个执行线程 线程组:按照线程性质对线程分组 三者关系:一个进程有多个线程组,一个线程组有多个线程2.线程的执行顺序并发执行:多个线程同时执行,特点:执行结束的顺序与开始的顺序不一致 顺序执行:按照线程的启动顺序挨个执行 默认情况下,线程组中的线程是并发执行 每一个线程都要执行组内的http请求3.线程组的原理:线程组用来模拟用户的并发访问4.线程组的主要参数:线程数、循环次数、启动延迟(Ramp

2022-03-30 21:31:11 307

原创 性能测试和Jmeter

一. 性能测试(服务器)①原理:基于协议模拟用户发出请求,对服务器形成一定负载,来测试服务器的性能指标是否满足要求性能指标②定义:指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。③标准:多:支持同时访问的虚拟用户量越大越好 快:请求的时候响应时间越短越好 好:用户请求的整个过程运行越稳定越好 省:节省资源,用最少的资源跑最大的并发数④关注点:空间:服务器CPU/内存的使用率(一般CPU和内存使用率不超过75%~80%,CPU占用太高会导致处

2022-03-30 12:08:54 3860

原创 Fiddler常用操作

一、模拟弱网测试1.描述:日常我们的网络状况比较好,有时候经常忽略在低网情况下系统的页面表现,而fiddler可以帮助我们限速进而达到模拟低速网络的状态2.操作步骤:①设置延迟时间:点击Rules→找到对应的if模块填写时间②启用弱网测试:点击Rules→Performance→Simulate Modem Speeds③发送请求查看响应时间二、过滤器的使用三、Autoresponder替换1.描述:关于Fiddler的AutoResponder其实就是重

2022-03-30 01:11:09 4432

原创 Fiddler断点调试

一、断点修改1.request操作步骤:①在浏览器中请求10086接口②点击Rules→Automatic Breakpoints→Before Requests/或单机断点图标③重新请求接口(刷新浏览器页面)→选中调试接口→修改参数并执行④断点请求成功2.response操作步骤:①在浏览器中请求10086接口②点击Rules→Automatic Breakpoints→After Responses/或双击机断点图标③重新请求接口(刷.

2022-03-29 21:28:14 1162

原创 Fiddler抓包

一、fiddler的介绍Fiddler是一款HTTP协议调试代理工具,它能够抓取记录本机所有HTTP(S)请求.其运行机制其实就是本机127.0.0.1上监听8888端口的HTTP代理二、fiddler的原理三、Web端抓包操作步骤:①获取https协议接口信息的基本配置:点击Tools→Options②点击Connections→进行端口的配置和一些功能的勾选③点击HTTPS→勾选一些功能...

2022-03-29 16:58:37 344

原创 Charles安装移动端证书(虚拟器)

一、操作步骤(和安装移动端证书操作几乎一模一样)以下操作使用的是雷电模拟器(建议3版本比较稳定)1.关闭web端抓包,避免抓到web端接口造成干扰2.点击Proxy→Proxy Settings3.设置端口号6666,默认8888→勾选Enable transport HTTP proxying4.启用证书:点击Proxy→SSL Proxy Settings→勾选Enable SSL Proxying→Add→正则表达式*→OK5.下载证书:点击Help..

2022-03-28 20:01:33 2586 2

原创 Charles安装移动端证书(手机)

一、为什么下载Charles的ssl证书默认情况下,charles不能解析https协议的接口,里面的请求和响应数据都是乱码格式,所以我们 需要下载ssl证书,来获取里面的数据二、证书下载操作步骤:1.点击Proxy→Proxy Settings2.设置端口号默认8888→勾选Enable transport HTTP proxying3.下载证书:点击Help→SSL Proxying→Install Charles Root Certificate on a Mo

2022-03-28 12:19:30 15704 2

原创 Charles的功能操作

一、断点调试修改request1.功能:验证后端有没有进行逻辑处理场景:例如注册输入不符合规则的密码会提示密码错误不能提交,若输入正确的密码,点击提交并且成功,请求过程中使用charles拦截进行断点调试,发现修改成不符合规则的密码也能提交,则后端逻辑出现问题2.操作步骤:①右击接口,点击Breakpoints②点击Proxy→点击Breakpoint Settings③点击Enable Breakpoints→Add或双击已存在Location→编辑接口断点的值→OK.

2022-03-28 07:29:52 1399

原创 Charles安装web端证书以及基本设置

一、charles的作用及操作定位前后端问题 常见操作:弱网测试、断点调试、下载和安装证书等二、charles的工作原理截获真实客户端的HTTPS请求,伪装客户端向真实服务端发送HTTPS请求 接受真实服务器响应,用Charles自己的证书伪装服务端向真实客户端发送数据内容三、charles安装web端证书1.点击Help→SSL Proxying→Install Charles Root Certificate2.点击安装证书→确定→当前用户→下一页3.点击“将所.

2022-03-27 12:18:12 2680

原创 Postman接口测试2

一、postman的操作1.动态参数①描述:经常用于不能重复的参数数据{{$timestamp}}:生成当前时间的时间戳 {{$randomInt}}:生成0~1000的随机数 {{$guid}}:生成随机的guid字符串2.用例的批量执行①描述:接口中的批量运行3.数据驱动①描述:将测试数据保存本地,一次性进行运行②参数:在参数里面的数据文件值和取全局变量一致,使用{{}} 在断言里面取数据文件的值使用:data.字段名4.接口加密解密..

2022-03-26 21:41:21 2086

原创 Postman接口测试1

一、什么是接口英文缩写API,是一些预先定义的函数,包括接口地址、传入参数和返回参数。可以简单理解为,当需要访问某些数据,正常状态下传入合格参数,会收到该数据范围内的返回参 数。二、什么是接口测试不管是哪种接口,其本质就是发送一个request,然后服务器响应后返回一个response,然后我们对response进行分析,这即是接口测试。三、接口的分类1.webservice接口webService接口是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测

2022-03-24 21:32:58 2103 1

空空如也

空空如也

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

TA关注的人

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