- 博客(42)
- 收藏
- 关注
原创 利用python调接口获取物流标签,并转成PDF保存在指定的文件夹。
【代码】利用python调接口获取物流标签,并转成PDF保存在指定的文件夹。
2025-03-26 15:16:27
396
原创 用python代码将excel中的数据批量写入Json中的某个字段,生成新的Json文件
2.execl 保存在 D:\PYTHON-学习\邮政接口压力测试脚本\pythonProject1\test_73553\IDS.xlsx 中。1.将execl文件中的A列赋值给json中的TrackId,B列赋值给json中的OId。3.赋值完成后,输出新的json格式文件保存在项目JSON目录中。要求 execl的每一行,对应json中的每一个OId。
2025-03-14 14:12:20
525
原创 单个接口压力测试代码——线程数和运行时间可配置
2.设置每秒一个线程(运行时间和线程数可配置),调用:test-exord.flytc.com/api/OrderSploadOrder接口,并设置响应超时时间为90s。4.生成测试报告:测试报告中需要记录每次的请求时间、用例是否通过(响应报文中Remark = ”订单上传成功“为用例通过)、测试耗时、平均响应时间。1.生成一个10位(时间戳)随机且不重复参数赋值给Json中的ApiOrderId中。3.打印出每次请求中的响应状态码和响应报文中的OrderId字段。
2025-03-12 10:56:34
408
原创 默默的学python——两个重要的函数dir()、help()
help()函数在Python中用于显示模块,类,方法,函数,关键字,变量等的帮助信息,当你使用help()函数并传入一个函数作为参数时,他会显示该函数的文档,字符串(如果有的话),以及该函数的基本信息(如参数列表,返回值等)如果函数有文档字符串,help()函数会显示他,文档字符串是函数定义中的第一个未赋值的字符串字面量,他应该用于解释函数的目的,参数,返回值等。如果函数有参数,help()函数会列出他们,对于每个参数,他通常会娴熟参数的名称和类型(如果函数定义中有类型注解的话)。
2024-09-03 17:57:41
630
原创 默默的学python——变量
在Python中,变量(variable)的定义其实是一种更宽松的概念,与其他一些编程语言(如C、Java等)有所不同。在Python中,当你为某个东西(例如一个值、一个对象、一个数据结构等)赋予一个名字时,你就创建了一个变量。因此,我们不难得知:变量(variable)是表示(或指向)特定值的名称。1、 动态类型:Python 是一种动态类型语言,这意味着你不需要在声明变量时指定其类型,变量的类型是你在第一次给他赋值时自动确定的,并且在后续的操作中可以根据需要重新赋值,改变其类型。
2024-08-30 11:49:28
2622
原创 安装 allure 时踩到的坑:ERROR: JAVA_HOME is set to an invalid directory
安装 allure 时ERROR: JAVA_HOME is set to an invalid directory: F:\soft\jdk Please set the JAVA_HOME variable in your environment to match the location of your Java installation。这个问题的原因是java环境的环境变量不能运行。也就是在cmd中javac这个命令不能运行。
2024-03-28 12:04:18
687
原创 JDK安装完成后,出现java命令能运行但是javac命令不能运行
原因:就是高版本的JDK在安装时会自动添加Java环境配置文件,调用时默认先获取JDK的自动生成的文件,优先权优先于自己设置的JVA_HOME。解决方法:按照系统变量中的目录找到Oracle文件夹,把里面的几个文件都删除掉,这样你自己的JAVA_HOME就会生效了。java命令能用但javac命令不能用 ,(JAVA_HOME不生效)变量值是自己安装JDK的根目录,就是bin目录的上一级。系统安装完成之后需要配置Java环境变量。接着在系统变量的Path添加这两行。
2024-03-28 11:57:01
1292
原创 pytest测试框架使用基础08 通过Yaml实现数据驱动
返回yaml文件中所有的yaml文档的对象生成一个迭代器,再使用for打印出来。将一个python对象生成yaml文档,存放再f中。将多个python对象生成yaml文档,存放在f中。作用是将yaml文档转化为python对象。yaml文件小demo:data.yaml。
2024-03-12 09:37:23
906
原创 pytest测试框架使用基础07 fixture—parametrize获取参数的几种常用形式
私有数据放在对于的脚本中进行统一维护。– 如果数据种类比较少,不超过5类以上–可以放在一个独立的脚本中,编写DDT的方法即可。– 需要的数据种类非常多,可以分类存放– 建议一个com数据层,创建多个.py文件–数据种类不多,复用性特别高–直接放在conftest.py中一般来说,数据读取的方法和数据文件在相同路径下。
2024-03-08 17:48:51
1379
原创 pytest测试框架使用基础06 fixture——parametrize
pytest.mark.parametrize 允许在测试函数或类中定义多组参数和 fixtures。参数化场景:只有测试数据和预期结果不一样,但操作步骤是一样的测试用例是可以用上参数化的。创建test_cases02.py文件可以看到,三个用例都是先计算,然后断言某个值,重复写三个类似的用例有些冗余。2、运行结果:可以看到,只有一条用例,但是利用参数化输入三组不同的测试数据和预期结果,最终执行的测试用例数还是3条,可以节省很多代码。
2024-03-07 11:16:22
948
原创 pytest测试框架使用基础05 fixture——params和ids
我们都知道参数化。比如我要测试一个查询接口/test/get_goods_list,这个接口可以查询到商品的信息。在请求中,我可以根据请参数goods_status的不同传值,可以查询到对应状态的商品数据,比如:1-未销售、2-销售中、3-已售罄。那么在编写自动化测试case的时候,在断言里就要分别验证到这3种状态的商品数据。通常,在执行case之前,会去数据库分别插入对应状态的商品数据,来满足测试需求。而在pytest框架中,我喜欢用fixture()去实现测试数据的准备和清理工作。
2024-03-06 16:50:26
1227
原创 pytest测试框架使用基础04 fixture用法
虽然类中有2个方法,但fixture的scope是class,因此只执行一次。fixture是pytest用于将测试前后进行预备、清理工作的代码处理机制。可以看到,虽然.py文件下存在一个类和一个函数。但只执行了一次前置操作。三级目录: test_demo02.py。三级目录: test_demo01.py。三级目录: test_demo02.py。二级目录:test_demo.py。二级目录:conftest.py。二级目录: tests。
2024-03-05 09:54:06
391
原创 pytest测试框架使用基础03 setUp()和tearDown()
总结:setup()函数表示测试类中每个测试方法执行前都需要执行的操作,teardown()函数表示每个测试方法执行后都需要执行的操作。Pytest框架setUp()函数和tearDown()函数主要分为:模块级,类级,方法级,函数级。Pytest框架也有前置setup()函数和后置teardown()函数,并且还不止四个。模块级与函数级,不定义在测试类中。类级与方法级,定义在类中。
2024-02-29 17:02:57
906
原创 pytest测试框架使用基础02
单元测试框架是指在软件开发当中,针对软件的最小单位(函数、方法)进行正确性的检查测试。提高测试效率,降低维护成本减少人工干预、提高测试的准确性,增加代码的重用性核心思想是让不懂代码的人也能够通过这个框架去实现自动化测试1、pytest是一个非常成熟的python单元测试框架,比unittest更灵活、容易上手2、pytest 可以和selenium、request、appium结合实现web自动化、接口自动化、app自动化3、pytest可以实现测试用例的跳过以及 reruns失败用例重试。
2024-02-26 20:27:17
896
原创 安装pytest插件时报错:ERROR: Could not open requirements file: [Errno 2] No such file or directory: ‘require
就是你的文本其实是存在的,但是你所设置的路径不对导致了系统找不到requriements.txt文件。所以,只需要更改自己的路径设置为要查询文件的上级文件的路径就好了。
2024-02-26 16:42:38
10008
1
原创 pytest测试框架使用基础01
简单灵活,容易上手· 支持参数化· 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)· pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium)、pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等。
2024-02-26 11:35:54
972
原创 python-requests库学习笔记03-requests模块Session的简单用法。
Session:在计算机中,尤其是在网络应用中,称为“会话控制”。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在Session对象中。有关使用Session 对象的详细信息,请参阅“ASP应用程序”部分的“管理会话”。注意会话状态仅在支持cookie的浏览器中保留。
2024-02-24 15:28:08
664
原创 python-requests库学习笔记01
requests.request()和session.request()的区别:前者的每个请求都是独立的,后者自动的关联所有请求的cookie信息。re.findall() 通过正则匹配多个值,返回List,通过下标取值,没有匹配到返回None。re.seach() 通过正则匹配一个值,通过下标(1]取值,没有匹配到返回None.jsonpath.jsonpath()返回一个列表,通过下标取值,没有找到返回None.2.通过单独的文件保存中间变量实现接口关联。1.通过类变量保存中间变量实现接口关联。
2024-02-23 15:46:49
442
原创 默默的学python——字符串相关内置函数
内置函数---字符串相关内置函数1.capitalize()2.lower()3.upper()1.capitalize() 首字母大写方法,()里面不需要填写任何参数a = 'hello python'print(a.capitalize())然后运行代码后输出:Hello python可以看到已经把字符串的首字母转换成了大写2.lower()将大写字符转换成小写方法,()里面不需要填写任何参数b = 'HELLO PYTHON'print(b.lower())然后运行代
2021-11-08 16:31:09
420
1
原创 Python——SMTP发送邮件(发送不同格式、附件)
SMTP发送邮件一、Python3 SMTP发送邮件二、使用第三方 SMTP 服务发送1.QQ邮箱2.网易邮箱三、发送HTML格式的邮件四、发送带附件的邮件一、Python3 SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。格式如下:import smtplib
2021-01-11 10:27:06
2926
原创 自动化测试——读取配置文件(.ini文件)数据
一、创建配置文件:在当前目录创建一个.ini文件列如:baseCon.ini[db]host = 127.0.0.1port = 3306user = rootpwd = 123456database = lp_cscharset = utf8[test_data]phone = 18888888888pwd = 123456789二、读取配置文件数据在读取配置文件先,现获取baseCon.ini的绝对路径:代码如下:import osfrom common.initP
2021-01-05 11:42:17
557
原创 python——Faker库生成测试数据写入数据库
安装Fakerpip install Fakerfrom faker import Fakerimport pandas as pdfrom urllib import parseimport pymysqlclass CreateData(object): def __init__(self): # 选择中文 fake = Faker('zh_CN') self.data_total = [ [
2020-12-31 17:52:47
2120
原创 Python——随机生成手机号
# -*- coding: utf-8 -*-# -*- coding: utf-8 -*-import random,redef create_phone(): # 第二位数字 second = [3, 4, 5, 7, 8][random.randint(0, 4)] # 第三位数字 third = { 3: random.randint(0, 9), 4: [5, 7, 9][random.randint(0, 2)],
2020-12-30 16:31:13
1099
原创 python小练习——猜谜游戏
import randomclass GuessNum(object): def __init__(self, max, min): self.max = max self.min = min self.num_func1 = 4 # 方法1:猜大小 self.num_func2 = 4 # 方法2:压缩一半大小 self.num_func3 = 1 def Num(self):
2020-12-29 11:42:23
761
原创 默默的学python——错误和异常
错误和异常一、错误1.语法错误2.逻辑错误二、异常1.python中的异常类三、异常处理1.异常的捕获2.错误类型捕获异常3.捕获未知错误4.异常捕获完整代码5.异常的传递四、抛出异常1.手动抛出 raise 异常2.自定义异常类一、错误错误分为语法错误和逻辑错误1.语法错误>>> ifFile "<stdin>", line 1 if ^ SyntaxError: invalid syntax程序执行过程中,python解释器会检测你的程序是
2020-12-28 15:44:04
376
1
原创 python 100例python 3.6.8
python 100例例题001例题002例题001"""题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。"""for i in range(1, 5): for j in range(1, 5): for k in range(1, 5): if (i != j) and (i != k) and (k !=
2020-12-15 16:40:23
1555
1
原创 默默的学python——文件读写
文件读写一、创建目录1.创建一层目录mkdir()2.创建多层目录makedirs()3.实例4.删除目录二、文件操作file1.新增文件2.编辑文件3.删除文件二级标题二级标题一、创建目录python可以使用mkdir()和makedirs()两种方法来创建目录,mkdir()创建一层目录,makedirs()创建多层目录。1.创建一层目录mkdir()实例:import os# 创建目录‘D:\\Python创建的文件夹’os.mkdir(r'D:\\Python创建的文件夹')2.创
2020-12-14 17:30:18
526
1
原创 小练习——猜数字游戏
"""1.一个words列表里存放若干的单词,例如:["extends", "private", "static", "public"]2.在words列表里随机取出一个单词放进word列表,例如:在这里插入图片描述3.用一个tips列表存放提示信息,长度跟随机取出来的单词长度相同,而且初始化如下图:在这里插入图片描述4.一个列表放随机数,长度跟随机取出来的单词长度相同的,且不重复。在这里插入图片描述5.当用随机数列表里的前两个元素,用word列表里的元素替换提示信息列表的元素:在这里插入图片描述
2020-12-12 15:01:33
482
2
原创 默默的学python——模块和包
模块和包模块(Module)和包(Package)一、导入模块1.import 语句2.from ... import... 语句模块(Module)和包(Package)1.模块:一个包含所有你定义的函数和变量的文件,其后缀名是 .py ,一个.py文件就是一个模块2.包:一定包含 init.py模块 的文件夹,一般也会包含其他一些模块和子包3.库(lib):库是完成一定功能的代码集合,具体表现可以是包,也可以是一个模块4.框架(framework):为解决一个开放性问题而设计的具有一定约束性的
2020-12-12 10:10:59
214
1
原创 python使用网易邮箱服务发邮件报554
错误信息(554, b’DT:SPM 163 smtp14,EsCowACnnOp_kdBflbfuIg–.5619S2 1607504256,please see http://mail.163.com/help/help_spam_16.htm?ip=61.140.181.56&hostid=smtp14&time=1607504256’)出错代码:import osimport smtplibimport base64from email.mime.text import
2020-12-09 17:08:17
830
原创 Python3——函数小练习
练习一"""1、 打印名片程序:输入姓名,电话号码,性别,最后打印出来名片• 控制姓名长度为6-20• 电话号码长度11• 性别只能允许输入男或女• 每一样信息不允许为空"""# 一、三个循环分开写def func1(): while True: name = input('请输入姓名,长度6-20') if len(name) >= 6 and len(name) <= 20 and ' ' not in name:
2020-12-04 17:15:48
272
原创 默默的学python——数据结构
数据结构简介一、列表1.列表的增删改查2.列表基本操作列表嵌套3.列表函数&方法列表中的内置函数:列表中的内置方法:二、元组1.元组增删改查2.元组截取与拼接3.元组内置函数三、字典1.字典增删改查2.字典内置函数3.字典内置方法四、集合1.集合增删改查2.集合间运算3.集合内置方法简介Python3基本的数据结构有列表(list)、元组(tuple)、字典(dictionary)、集合(set)四种结构如下:list = ['Google', 1, 2000, (1, 'xiaobai')]
2020-12-04 15:57:47
121
1
原创 默默的学python——函数
目录一、函数1.函数的特定和定义2.函数调用3.函数的参数传递可更改(mutable)与不可更改(immutable)对象python 传不可变对象实例传可变对象实例4.参数必需参数关键字参数默认参数不定长参数5.匿名函数语法6.return语句一、函数1.函数的特定和定义特点:实现特定功能;代码复用函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被
2020-12-04 11:40:14
192
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人