自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

风一样的人

前半生的混沌、后半生的顿悟

  • 博客(173)
  • 资源 (22)
  • 收藏
  • 关注

原创 D:\apache-jmeter-5.2.1\extras\build.xml:26: taskdef class org.programmerplanet.ant.taskdefs.jmeter

将 ${apache-jmeter}/extras 文件夹下的 ‘ant-jmeter-1.1.1.jar’ 文件复制到 ${apache-ant-}\lib 文件夹下。

2025-05-17 00:52:59 132

原创 UIjavaScritIU

先要去找到内嵌滚动条元素,再去进行滚动【scrollTop】3、修改元素的属性(删掉/改变元素的属性)1、页面的滚动/内嵌滚动条滚动。JavaScript总结使用。2、点击:click()

2025-04-19 22:49:02 285

原创 绕过UI的cooke和token的验证

cookie是一门客户端技术,一般是由服务器生成返回给浏览器客户端来保存的,并且cookie是以键值对的形式保存在浏览器客户端。很多的网站都在登录页面加入了识别文字,识别图片,拖动拼图的验证码方式来防止爬虫、恶意注册等,如果是做自动化,需要绕过。cookies失效的条件:–cookies绕过技术代码就需要更新cookies值 否则不能登录。的,每一个cookie都会有名称,值,过期时间…方案一、测试环境去除验证码 :最轻松的方法,找开发帮忙解决。注意,如果cookies失效 就需要重新获取cookies。

2025-04-19 14:22:21 325

原创 UI文件上传

这种比较麻烦,因为需要点开文件上传的窗口后,打开的是windows的文件选择窗口,通过系统工具实现自动化测试:windows系统自动化测试工具 :pyautogui,AutoIT,Pywinauto。Pywinauto:只支持windows,Mac和linux不支持,而且不稳定,支持多文件上传,兼容性问题较多;pyautogui:跨平台支持:windows、linux、mac,只支持单文件上传,操作也比较简单。跨平台支持,但是操作略微麻烦。这种比较方便,直接send_keys这个文件的路径就可以了。

2025-04-19 13:55:47 279

原创 UI键盘操作

所以我们需要代码操作键盘。使用的是send_keys里的Keys的类。Keys()类提供了键盘上所有按键的方法,常用的键盘按键操作如下。

2025-04-19 13:49:30 437

原创 鼠标移动操作

from selenium.webdriver.common.action_chains import ActionChains 【导包】什么情况下使用鼠标click?== 如果你发现有时候通过普通的click点击不了,那你可以选择鼠标click 【后面还会讲js点击】selenium普通的click,在点击的时候是有条件要求,被点击的元素需要是能够被点击的状态 – 有条件约束,有可能会失败。鼠标click,不会管元素是否能够被点击,直接去点击 – 没有条件约束,任何元素都可以点击 – 成功率更高。

2025-04-19 13:36:32 136

原创 下拉框select标签类型

在我们很多页面里有下拉框的选择,这种元素怎么定位呢?select_by_index(index) #通过选项的顺序 : 索引选择,从0开始。select_by_visible_text(text) #通过选项可见文本。options #提供所有的选项的列表,其中都是选项的WebElement元。2、如果是非Select类型元素,不能通过Select类来进行处理,此时。select_by_value(value) #通过value属性。select标签 : 通过select类处理。

2025-04-18 23:35:25 409

原创 三大等待和三大切换

弹窗有三种不同类型:alert(警告消息框)、confirm(确认消息框)、prompt(提示消息对话框)弹窗切换【alert(警告消息框),confirm(确认消息框),prompt(提示消息对话框) 】3)切换到最新窗口:driver.switch_to.window(窗口列表[-1])==最常见 优先掌握。如果页面发生了弹窗,要点击弹窗元素,也要进行弹窗切换,不然定位不到元素。1、三大等待:等待的方式有三种:强制等待,隐性等待,显性等待。需要注意,窗口的句柄并不是固定的,而是由浏览器分配的,类似。

2025-04-18 23:32:52 1021

原创 八大定位UI

元素定位的目标:找到要操作的元素(唯一),然后进行操作。一定要找到唯一的元素,如果找到多个,就考虑换一个定位方法。8大元素定位:分为2大类代码里查找元素的方法: driver.find_element()一、第一大分类(6种)1、id属性:优先选择Id,id是唯一的driver.find_element(By.ID,“kw”).send_keys(“大学”)2、class属性:样式,颜色,宽高,大小,可以修改,确保class的属性值是唯一的才能用。

2025-04-12 18:51:06 942

原创 UI基础(1)

selenium webdriver -----------> 浏览器驱动程序【中间人 翻译的角色】 --------------------> 浏览器。1、并不是所有的页面内容都有直接对应的方法进行操作的,更多的内容操作需要使用特定方法进行元素的定位。负责定义页面呈现的内容:标签语言:<标签名>标签值<标签名>,每一种类型的元素都有自己独特的标签名来表示,是为了表达页面的内容,有统一的表达标准。HTML标签也可称之为元素,元素的特征: <标签名 属性=值 属性=值> 文本内容 </标签名> -----

2025-04-12 10:48:47 723

原创 IF语句和if...elif

else 都是互斥关系。从上到下依次匹配条件,如果条件成立,进去一个分支执行分支代码,后面的分支就不会执行!多个if – 后面接口自动化测试应用场景: 请求头、请求数据、文件file。4、如果是多个if语句-- 每个if语句都会执行–进行判断。if header: – header不为空,为True。3、elif:多个条件进行判断。要对data数据做处理。要对请求头数据做处理。

2025-04-09 15:37:58 231

原创 UI测试(2)

HTML标签也可称之为元素,元素的特征: <标签名 属性=值 属性=值> 文本内容 </标签名> -----2、属性 :HTML 元素可拥有属性 : id name class等,元素通用的属性【常见的属性】负责定义页面呈现的内容:标签语言:<标签名>标签值<标签名>,每一种类型的元素都有自己独特的。HTML 标签是由尖括号包围的关键词,比如 , 标签通常是成对出现的,比如。标签名来表示,是为了表达页面的内容,有统一的表达标准。,标签对中的第一个标签是标签头,第二个标签是标签尾;

2025-04-07 22:40:29 349

原创 UI自动化基础(1)

selenium webdriver -------------------------------> 浏览器驱动程序【中间人 翻译的角色】 ----------------------------特别注意:chrome浏览器关闭自动更新: https://blog.csdn.net/weixin_48337566/article/details/12324。火狐浏览器关闭自动更新: https://www.lmlphp.com/user/58724/article/item/840150/

2025-04-07 22:31:12 497

原创 接口(3)

注意: 提取的结果是一个列表,所以获取更加具体的数据 需要进行索引取源数据 需要是一个字典。2、pytest测试框架去测试接口: 对应用测试用例。【登录,搜索,购物车等】jsonpath(要提取的源数据,jsonpath表达式)jsonpath 是一个第三方库。4、自动化测试用例设计注意事项。

2025-03-31 19:19:51 148

原创 接口测试(2)

requests 传递参数可以用三个形参接受: --如果用错了 接口的参数传递不过去 接口请求会有问题。{name: (filename,文件对象(open打开),媒体类型(Content-Type))}在requests中通过指定files参数用来处理文件上传的;files参数的值,也必须是。媒体类型:content-type也可以不加, 其实就是MIME类型,但是可以不。filename: 可以自己定义上传的文件的名字 不用跟真实的名字一样;name是你传的是啥 ,开发定义的名字参数的名字。

2025-03-31 14:36:23 344

原创 接口测试(1)

第一:接口测试更早的介入 ,更早发现bug,而且bug更接近于底层bug,影响范围广,有效降低bug的修复成本从而降低研发成本。第二:防止有人绕过前端页面的限制,直接对接口发送请求,确保接口也有处理异常数据能力,保证接口的安全性和健壮性。接口文档: 后端开发提供的一个描述接口信息的文档 告诉别人怎么调用我的接口 【接口地址 + 请求方法+请求头。Authorization字段: 开发定义的,用来带用户凭证信息的,做接口鉴权:-- 下节课专门接口鉴权。Http协议的构成: 基于请求-响应的模式工作的。

2025-03-28 15:56:25 606

原创 正则表达式-万能表达式

https://tool.oschina.net/uploads/apidocs/jquery/regexp.html(规则)re相关的文章: https://www.cnblogs.com/Simple-Small/p/9150947.html。在线的正则验证:https://c.runoob.com/front-end/854/Python的正则的库,内置库 re , 直接导入re 库,免安装。非贪婪匹配模式:找到了## 两个后 不会再找了就匹配成功了;我们用的做多就是万能表达式: 非贪婪匹配的 .

2025-03-26 14:27:03 614

原创 python的文件上传

file_param = {“file”: (“filename”, open(“pic_path/filename”, mode=“rb”), “image/png”)} # 文件参数 --最简易写法。# 文件的参数{file:(文件名字(可以省略),open(“路径”,mode=“rb”))} pic_path。

2025-03-24 18:19:59 214

原创 Python和json

逻辑(true和false),python 布尔值,True, False。字符串 双引号, 区别python,字符串可以是单引号,双引号,三引号。python 字典转json,序列化 dumps() 字符串。中括号[] 保存数组,类似于Python列表,索引从0开始。json转换python字典,反序列化,load() 字典。json不是字典可以和python的字典相互转化。空值 null,python 空值 None。JSON的值value。

2025-03-24 16:43:46 222

原创 接口自动化测试pyest测试框架

保障单接口的正确性,既要保证接口可以按照需求正确处理传入的参数,给出正确的返回,也要按照需求,正确的拒绝传入异常参数,给出正确的拒绝性返回。异常场景:使用等价类和边界值的方法,设计测试用例,用不属于范围的数据去发送请求,检查服务器能否正常处理。JSON 数据的书写格式是: key : value ,看起来跟Python的字典很像,但是不是字典。参数异常:长度异常,数据类型异常,为空,重复,也无异常参数【比如注册用户非正常的手机号】单接口场景:关注点是接口的各种参数组合。2、json数据和序列化 反序列化。

2025-03-22 23:25:14 450

原创 Jsonpath使用

acce_token = jsonpath(要提取的元数据,jsonpath的表达式),#acce_token 是一个列表类型。注意:jsonpath取值之后,获得的是一个列表,如果想获取jsonpath 转换之后的值,使用列表的取值即可。jsonpath使用递归获取值,万能获取法,表达式:$…1、jsonpath语法。

2025-03-21 20:53:54 321

原创 Pytest的数据驱动DDT

case 和cases_all意思就是: 将cases_all里每个成员依次传递给case这个变。后面的用例方法里的参数case都是必须要要跟这个装饰器。cace注意要加引号,虽然是个变量 但是要加引号。就算前面的断言失败了,也依然会执行后续的用例。几条用例数据就运行几条测试用例。里的case名字一致。

2025-03-20 19:47:27 476

原创 pytest的测试报告allure

1、pytest智能自动收集所有用例:pytest.main(): 自动在这个文件所在目录下收集符合命名规则的用例=pytest.main()通常写在入口文件run.py或main.py。3、pytest.main([“-v”,“-s”]):-v、-s常用命令行参数。- 用例定义的加一个标签 : 用装饰器形式:@pytest.mark.p2。-根据模块py文件的名字排序 : 数字,ASCII顺序 0-9a-zA-Z。方式二: 指定目录和文件执行 ,加参数控制 --这个只能过滤模块-py。

2025-03-20 19:18:29 828

原创 Pytest的夹具共享(2)

也可以在同一个项目中不同的目录下创建conftest.py文件,放在testcases下;1、问题:夹具跟用例都是写在一个py文件中,在自动化框架中,测试用例、夹具在不同的文件中,跨文件夹具使用呢?3、conftest.py的作用范围: conftest.py所在文件夹下面的所有用例。2、调用conftest里的夹具,不需要导入conftest.py模块,可以自动查找fixture。-2)夹具共享:如果要直接实现多个模块(py文件)共享夹具,可以用conftest。就会去根目录下搜索conftest文件;

2025-03-20 19:00:01 611

原创 Pytest的夹具

2)class(测试类): @pytest.fixture(scope=“class”),针对整个类生效:先执行前置-再类下面的所有用例-再执行后置。一共有4个作用域:function(测试函数)、class(测试类)、module(测试模块)、session(测试会话)4)session(测试会话):整个会话生效 【UI自动化,打开一个浏览器,创建一个会话】叫做用例的前置和后置。3、3、yield: 前置和后置的划分 ,还可以设置夹具的返回值。- yield之上的是前置,之下的就是后置。

2025-03-20 18:39:06 758

原创 Python数据库封装

cursorclass=cursors.DictCursor # 在数据库连接时,设置参数cursorclass为字典游标,fetch返回数据为字典格式。cur.fetchmany(size=行数) — # 从查询结果集当中,获取指定条数的数据。4、第四步:获取查询结果: 注意是从游标位置取数据,默认保存为元组。2、第二步:获取游标 ( 进行sql查询之前,先要获取游标)1)对于查询sql,不会得到结果集,, 得到查询结果的数量。-关闭游标 :得到结果后,需要关闭这个游标。1、第一步:连接数据库。

2025-03-19 11:40:20 326

原创 Python的Pytest(2)

1、pytest智能自动收集所有用例:pytest.main(): 自动在这个文件所在目录下收集符合命名规则的用例=pytest.main()通常写在入口文件run.py或main.py。3、pytest.main([“-v”,“-s”]):-v、-s常用命令行参数。- 用例定义的加一个标签 : 用装饰器形式:@pytest.mark.p2。-根据模块py文件的名字排序 : 数字,ASCII顺序 0-9a-zA-Z。方式二: 指定目录和文件执行 ,加参数控制 --这个只能过滤模块-py。

2025-03-18 19:29:44 350

原创 Python的Pytest测试框架(1)

自动化测试:熟悉业务 ­­ 写用例(手工用例转化为自动化测试用例)­­ 用代码表达用例 (代码写出用例) ­­ 代码收集测试用例­­ 代码执行测试用例 ­­ 代码生成测试报告。测试框架 : unittest pytest,技术栈,提供了表示测试用例,发现测试用例,执行测试用例,生成测试结果报告…pytest和unittest都是单元测试框架,可以用来编写测试用例,收集用例,运行用例,生成报告,实现前后置。unittest : 内置库,有二次开发的库,比如unittestreport,不太灵活,不太智能。

2025-03-18 19:18:21 336

原创 Python的路径pathlib库

内置功能库:Python里已经有的,可以实现一组功能的工具。比内置函数更强大更丰富。3、pathlib:路径处理的一个功能库。内置库不需要做安装,要使用的话,要导包。1、方式一:绝对路径是指:电脑里从根目录开始的一个完整的路径 --不推荐。读取文件默认只会从当前代码操作文件的目录下读取文件。2、相对路径: 不会写死每一级的路径,相对层级管理,找文件路径。智能识别不同win mac等系统路径的分隔符,兼容性好。

2025-03-18 15:31:41 158

原创 Python的openpyxl库读取excel文件(2)

如果单元格只有时间格式 : 2024/12/22,那么读取出来就是 datatime类型 - 年月日时分秒 - datetime.datetime(2024, 12, 22, 0, 0)-如果单元格当中用只有TRUE FALSE (excel表格会自动默认大写), 那么读取转化为布尔值类型–True False;比如列表 字典等数据。-如果单元格为空(没有编辑过数据)读取出来是 None == 注意空格是字符串 不是None。-如果单元格里只有数字,那么读取出来直接是数字-- 整型或者浮点型。

2025-03-18 15:18:29 203

原创 Python的openpyxl库读取excel文件(1)

如果单元格只有时间格式 : 2024/12/22,那么读取出来就是 datatime类型 - 年月日时分秒 - datetime.datetime(2024, 12, 22, 0, 0)如果单元格当中用只有TRUE FALSE (excel表格会自动默认大写), 那么读取转化为布尔值类型–True False;openpyxl不支持.xls文件格式,支持的格式有:.xlsx、.xlsm、.xltx、.xltm。不过现在.xls后缀的文件越来越少了,所以这两个库现在也用的少,而且读取和。写入还要分别用两个;

2025-03-18 10:58:01 578

原创 Python的类和对象(6)反射

1、动态的给类和对象添加属性,获取属性,删除属性,修改属性【反射】。

2025-03-18 09:13:02 221

原创 Python的类和对象(4)

动态的给类和对象添加属性,获取属性,删除属性,修改属性【反射】。1)设置属性:setattr( 对象/类,属性名,属性值)3)判断是否存在属性:hasattr(对象/类,属性名)2)获取属性:getattr(对象/类,属性名)) # 查看到所有的属性。

2025-03-17 22:38:07 309

原创 Python的类和对象(3)

2、子类可以多重继承:同时继承多个父类,那么拥有所有父类的方法和属性。子类:继承者 – 可以使用父类的所有属性和方法、大大简化代码。3、问题: 子类和父类有相同的名字的方法,优先用谁的么?子类也可以有自己的属性和方法,定义自己的实例方法。1、子类可以多层继承:爷爷-爸爸-孙子。语法:在类名字后加上(继承的类名字)2、子类的方法和属性。

2025-03-17 22:32:08 348

原创 Python的类和对象(2)

3)实例方法可以定义参数,参数只有方法本身可以用 ,不能实现实例对象之间的共享。两种方法对比结论:实例方法因为更强大,所以如果以后搞不清楚应该定义成什么方法,就定义为实例方法。4、类方法: 类共有的动作和行为 – 不掌握也可以,用的比较少。3、实例方法里可以调用实例属性、类属性,实例属性可以被每个实例方法共享。实例方法–特殊的实例方法。1)实例方法里面调用实例属性。实例属性 是所有的实例的方法可以共享属性的值。实例方法里可以调用类属性,也是self.类属性。2、实例方法:某个具体的对象具备的动作和行为。

2025-03-17 22:15:11 360

原创 Python的JSON 反序列化和序列化

2、jsonpath官方地址:https://goessner.net/articles/JsonPath/在线检验jsonpath是否正确:https://www.jsonpath.cn/导入: from jsonpath import jsonpath。安装:pip install jsonpath。1、load和dumps。

2025-03-17 11:09:12 207

原创 Python的类和对象(1)

2、注意: 如果实在搞不清楚定义为类属性还是实例属性,统一定义为实例属性。-实例属性:某个具体的对象具备的特征和状态 – 不同的人不同发色;2、(对象)实例属性:某个具体的对象具备的特征和状态 – 不同的车-不同颜色、logo。3、获取实例属性,通过对象获取初始化函数中的实例属性。类属性:类共有的特征和状态。1、类属性:类共有的特征和状态 – 人类-五官、四肢;3、实例方法里可以调用实例属性、类属性,实例属性可以被每个实例方法共享。类属性的值,可以通过类获取,也可以通过对象获取。

2025-03-12 15:40:35 1012

原创 Python的日志

1、日志作用:但凡想要print 的地方 或者想要debug查看数据的地方,可全部记录日志。rotation=“20 MB”: 按照文件大小分离,日志文件超过10MB会创建换一个新的日志文件 == 更常见。这里参数设置了一个级别之后,这个级别及其以上的级别的日志都会被记录到日志文件里。不能持续化存储日志。5、retention: 限定日志文件的个数,超过限定的个数,旧的日志文件就会被删除。4、rotation: 进行日志文件分离的。1、sink:日志文件的名字,直接写当前的目录里生成一个名字的日志文件。

2025-03-12 14:49:54 279 1

原创 Python异常和断言

异常捕获:捕获到出错的代码,做一些处理(提示、错误记录日志等), 捕获异常后-不影响后面的代码的继续执行。一、常见异常的报错类型:NameError,IndexError,KeyError,ValueError,ZeroDivisionError。有异常-报错,但异常类型不匹配,不会执行except,异常未捕获,抛错-code1,后续的代码中断执行。类比生活中案例:小偷犯错误 - 异常, 捕获异常-小偷,后续整条街不会在出现经济损失。-生活中案例:异常捕获-小偷犯错了,警察抓起来;

2025-03-12 11:58:31 922

原创 Python的文件

wb:以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。-rb:以二进制格式打开一个文件用于只读。open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。文件操作场景:excel测试数据读取,配置文件的读取、接口-文件上传、日志记录-写入文件…readlines():读取文件的所有行-字符串(包含最后换行符),并将它们作为列表返回。文件操作:打开、读取、写入、关闭文件(避免冲突)读取和写入二进制、图片、视频等。

2025-03-11 14:15:57 135

FiddlerSetup最新版本下载,实用,用于拦截和爬虫,代理服务器

FiddlerSetup最新版本下载,实用,用于拦截和爬虫,代理服务器 FiddlerSetup最新版本下载,实用,用于拦截和爬虫,代理服务器

2022-04-22

Java开发实战经典

Java开发实战经典

2018-10-15

SecureCRTv7.0.0.326中文

SecureCRTv7.0.0.326中文SecureCRTv7.0.0.326中文SecureCRTv7.0.0.326中文SecureCRTv7.0.0.326中文SecureCRTv7.0.0.326中文

2017-12-11

svn-site-1.6.17

直接复制在eclipse的相应目录下!直接复制在eclipse的相应目录下!直接复制在eclipse的相应目录下。

2017-11-29

eclipse最新汉化包.zip

直接复制在eclipse的安装目录下!拷贝即可,重新启动eclipse!就是中文效果

2017-11-29

eclipse汉化包文件

直接复制在eclipse的安装目录下!拷贝即可,重新启动eclipse!就是中文效果

2017-11-29

scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64

scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64scrt_sfx81-zhz-x64

2017-11-24

scrt注册机制

SecureCRT+FX+keygen_x86+x64_v8.0

2017-11-24

web和App测试的区别

web和App测试的区别!web和App测试的区别!web和App测试的区别!web和App测试的区别

2017-11-01

tomcatPluginV33.zip

Eclipse3.7 tomcat插件 Eclipse3.7 tomcat插件 Eclipse3.7 tomcat插件

2017-10-09

selenium基础

selenium基础

2017-03-01

TestNGdsdf

testng,eclipse插件,解压后: 将features.rar解压后的文件件放入eclipse安装路径下的features中 org.testng...rar解压后的文件夹放入eclipse安装路径下的plugins文件夹中 重启eclipse即可

2017-02-27

全国省市区县 表格全国省市区县 表格

全国省市区县 表格全国省市区县 表格全国省市区县 表格全国省市区县 表格

2016-12-18

Hibernate3.0完整中文版教程.pdf

Hibernate3.0完整中文版教程.pdf

2015-09-28

[Java参考文档].JDK_API_1_6_zh_CN.CHM

[Java参考文档].JDK_API_1_6_zh_CN.CHM

2015-09-18

servletAPI中文

servletAPI中文.zip

2015-09-18

Struts2学习

此文档针对基础入门的学习,简单明了!容易入手

2015-06-30

mysql中文解决和check约束

对于mysql的认识和使用例子,以及check约束的实例案例

2014-12-15

springmvc+ibatis

springmvc+Ibatis!你应该可以的!专注交流技术

2014-12-04

JAVA代码实例

JAVA开发学习代码编写实例。关于面向对象实例。好处多多

2013-11-14

空空如也

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

TA关注的人

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