自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Pytest的环境切换

在公司可能存在多套环境,每个环境对应的数据库,redis,域名,用户都不太一样,尽管有配置文件,但是手动改起来也比较麻烦,我们希望在框架层面执行时,只需要指定执行的环境名称即可,他能够自动将各个环境信息切换到当前执行中来。

2024-07-23 22:51:20 152

原创 Pytest框架中公共基本信息配置文件抽取

公共基本信息比如卖家,买家,管理员,验证码等基本信息,数据库,redis,各个服务对应的域名,如果写在代码里面,要修改起来会比较麻烦,为了能够更好的维护他们,我们将他们放入配置文件中进行管理。

2024-07-23 22:22:24 143

原创 接口自动化并发执行,多进程

~~指定分配机制对于pytest-xdist来说,还有一个参数叫做--dist,可以指定多个进程并发时测试用例分配的维度,默认分配是按照用例,如果用例之间存在关联,他们没有被分配到同 一个进程,必然会失败,因此我们设计用例时,将有关联的用例放在同一个测试文件中,并且将分配机制改成按照测试文件进行分配,当多进程并发时,指定--dist==each,执行完成后测试报告的用例数量不对,比如一共10条用例,两个进程执行测试报告里面就应该有20条用例的数据,但是测试报告上面依然是10条。

2024-07-22 23:19:51 729

原创 复杂接口参数数据参数化处理

4、设计封装一个方法,使用jsonpath来完成数据替换,通过第三步的jsonpath表达式匹配到第二步默认参数目标,并且把新的值替换到默认参数中去,完成测试数据替换。json_object是json数据,json_path是要改数据的jsonpath,new_value是要改的数据。一、在接口调用的时候,参数化遇到复杂json,如果把每个参数当成独立列来对待,数据比较多,维护起来比较复杂。3、在数据文件中只维护用例对应的目标参数即可参数格式是{"$.goods_name":""}所以我们设计一个方法。

2024-07-21 12:53:50 252

原创 pytest日志设置

先把日志代码放上,后面再将如何将日志集成到框架和测试报告中。

2024-07-16 23:34:51 320

原创 使用Excel和Yaml实现数据驱动

如果测试用例和real_excel不在同一个包下,会报错数据文件找不到FileNotFoundError,这个问题是因为如果操作文件传入的是相对路径,那么python在执行的时候会根据执行文件所在的路径去找,很多时候找不到所以我们要想办法传绝对路径,不管在哪里执行都能找到,但是绝对路劲也不能写死,所以需要设计一个文件管理的角色,帮助管理框架中的数据及配置文件的绝对路径。3、用例里面调用real_excel来获取excel里面的数据,读取出来的数据是列表嵌套列表的形式,是符合数据驱动的要求的。

2024-07-16 23:32:05 436

原创 mysql在自动化测试中的运用

cursorclass=pymysql.cursors.DictCursor # 这个参数的意思是把得到的数据当做一个字典。cursorclass=pymysql.cursors.DictCursor #这个参数的意思是把得到的数据当做一个字典。self.connect.commit() #提交事务,如果不提交,下次查询查出的就是新数据。#这个游标对象会将当前数据库的结果集进行存储,后续的操作都在这个结果集上操作。#得到的res是列表嵌套字典的形式,每个字典就代表每行数据。

2024-07-14 21:10:47 705

原创 redis在自动化测试中的运用

需要先定义一个类,初始化方法是对连接进行定义,再定一个方法对redis进行操作,练习的项目是把java对象做了序列化存储后的数据,需要借助第三方库转成python中的对象,才能进行解析,javaobj-py3。#订单确认参数存储在redis数据库里面的是一个hash,对应python里面的字典,所以我们可以通过遍历的方式拿到里面的数据。redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合),zset(有序集合)设置值:set name dawei。

2024-07-14 18:11:40 907

原创 python面向对象

面向对象里面有两个重要的概念,类、对象,Plane是类,Plane(sn="001")是对象,类的定义里面self就代表对象本身。# 这就是根据类去创造一个对象,Plane()这是创造的过程,然后将创造的对象赋值给plane1这个变量。#对于每个对象都有的属性和行为,并且大家都不相干,此时属性和行为就需要采用实例属性和实例方法来定义。#当前类所有代表的事物,公共的行为,但是这个行为又不会因为对象的改变而改变,那么就采用类方法来定义。#针对对象的行为动作,定义成方法,self代表对象本身。

2024-01-18 23:49:28 651

原创 Pytest测试框架学习

右键执行,pycharm默认是以unittests的方式执行,需要修改执行方式,然后把之前的执行记录清除,然后就可以右键执行,查看所有用例的执行结果,需要勾选控制台上的对号。以类的方式编写测试用例,不能包含init方法,以test开头的方法代表一条用例。pytest -sv 文件路径::测试类::测试方法,sv表示有详细的执行日志。#针对接口响应字段的核心数据做断言,code码。纯函数方式编写测试用例,以test_命名的函数。#断言,断言就是判断结果是否正确的过程。二、pytest编写测试用例的规则。

2024-01-10 00:44:53 412 1

原创 Python Requests库学习

要调用一个接口,需要知道接口的url(域名和地址),接口请求的头信息,接口的请求参数,对于get接口来说,查询参数会定义为params,把请求信息准备好就可以发起接口调用,接口调用可以用requests.get(url=url,params=params)的方式进行调用,我们可以定义一个变量来获取接口响应对象res=requests.get(url=url,params=params),接口响应包含,响应头信息,响应状态码,响应body体数据。一、创建新项目,安装requests库。路径参数的get接口。

2024-01-08 23:39:59 784

原创 postman学习

Tests(在这里做断言),图中断言的是响应状态码是不是100,可以选择右边的SNIPPETS选择需要的断言,这里的东西很好用。本接口的签名方法为,三个参数加在一起,然后进行MD5加密,不知道自己接口签名方法的宝子可以找对应的开发了解。表单参数,k=value,Body->x-www-form-urlencoded。文件上传接口,Body->form-data,key填写file选择file。key=json接口,Body->x-www-form-urlencoded。//获取接口响应json格式的数据。

2024-01-06 22:05:09 825 2

空空如也

空空如也

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

TA关注的人

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