python
sun_977759
这个作者很懒,什么都没留下…
展开
-
python——遍历字典对象移除某个key时报错RuntimeError: dictionary changed size during iteration
起因:需要提出字典对象中value为空的keydef test_dic(dic): for x in dic.keys(): if dic[x] is None: dic.pop(x) return dict_dic = {'a1': None, 'b1': 1}print(test_dic(t_dic))运行后报错:RuntimeError: dictionary changed size during iteration在原创 2020-08-05 10:31:44 · 435 阅读 · 0 评论 -
python学习——接口自动化测试报告-HTMLTestRunner
import unittestimport osimport timeimport HTMLTestRunner# 用例路径case_path = os.path.join(os.getcwd(), 'case')# 报告存放路径report_path = os.path.join(os.getcwd(), 'report')def all_case(): disc...原创 2020-03-18 15:00:12 · 515 阅读 · 0 评论 -
python学习——由于错误使用文件绝对路径导致出现的问题,os.path.abspath和os.path.dirname的用法
场景:整个目录结构如上,测试用例在case目录下,运行脚本run在case目录以外当在api001这个脚本里面单独执行测试用例的时候是能正常获取到绝对路径,定位到需要的文件可是在run这个脚本里面去执行的时候,就发现定位到的位置不正确了原因:os.path.abspath('.')是获取当前工作目录路径,我的理解是即获取执行脚本目录路径所以当在脚本run里执行时,获取...原创 2020-03-18 14:20:14 · 1818 阅读 · 0 评论 -
python学习——接口测试之上传文件接口
首先了解一下os模块import osos.getcwd() # 获取当前工作目录路径os.path.abspath('.') # 获取当前工作目录路径os.path.abspath('test.txt') # 获取当前目录文件下的工作目录路径os.path.abspath(os.curdir) # 获取当前工作目录路径os.path.join('file1','file...原创 2020-03-10 14:05:43 · 925 阅读 · 0 评论 -
python学习——做接口测试时,数据库的commit()方法在使用过程中出现的问题
场景:有一个增加数据的接口A,在为接口A拼装参数的时候创建了个数据库连接对象,去数据库里查询了(执行了一次select)某个数据用于拼装接口A的参数,这个时候数据库连接对象还在,未关闭执行接口A再次使用刚才创建的数据库连接对象去查询(又执行了一次select)刚才增加的数据是否增加成功问题:发现查询出来的始终是增加数据的前一条数据,效果如下,预期查询到的应该是oracle......原创 2020-03-09 11:25:13 · 5784 阅读 · 0 评论 -
python学习——map函数的使用,实现将list中的string转为int
最近在用python做接口测试,开始记录在接口测试中遇到的问题及解决办法,促进自己也进一步学习===========================================================================实际案例:某个接口返回值如下:{'64': {xxx},'65':{xxx}}预期能提取出来的效果为[64,65]通过 list({...原创 2020-01-14 17:09:01 · 1103 阅读 · 0 评论 -
python学习——可变参数*和**
情景:有一个函数,参数个数不一定,定义可变参数def test_1(*numbers): print(numbers, type(numbers))test_1(1, 2, 3, 4) # 传入了4个参数test_1(1, 2, 3) # 传入了3个参数运行结果为:(1, 2, 3, 4) <class 'tuple'>(1, 2, 3) ...原创 2019-09-25 14:47:22 · 481 阅读 · 0 评论 -
python学习——删除__init__.py引起的问题
出现的问题:在做python+selenium自动化测试的时候,期望用HTMLTest批量执行测试用例,具体控制测试用例执行的代码如下:# 用例路径case_path = os.path.join(os.getcwd(), 'test_case')# 报告存放路径report_path = os.path.join(os.getcwd(), 'report')def all...原创 2019-09-25 10:24:06 · 1366 阅读 · 0 评论 -
python学习——生成随机数
需要用到随机数(random)模块import random# random.randint(a,b)函数返回数字n ,n为a到b之间的数字(a<=n<=b),包含a和b# 生成0到9之间的随机数print(random.randint(0, 9))...原创 2019-09-24 15:19:44 · 288 阅读 · 0 评论 -
WEB/UI自动化测试环境的搭建——python+selenium的安装与配置
1 环境准备需要安装python 需要安装selenium 需要安装pycharm 需要安装浏览器驱动2 安装python因为是小白入门的python,在网上看python2和python3还是有很大的改动,所以直接基于python3来学习,安装python3Python官网:https://www.python.org/python3安装教程:https://www.ru...原创 2019-09-24 15:08:25 · 351 阅读 · 0 评论 -
python+selenium 定位某一个元素里面的一组元素--find_elements()函数定位一组元素
web自动化学习--find_elements的使用场景:需要取到某个ul下每一个li的值解决思路:先定位到该ul元素,然后采用find_elements()方法获取到下面的所有li元素,然后遍历结果集取得需要的值ul = driver.find_element(*(By.xxx, 'xxxx')) # 先定位到ullis = ul.find_elements(*(By.TAG...原创 2019-09-19 11:11:22 · 7292 阅读 · 2 评论 -
python+selenium 巧定位xpath会变动的元素--last()函数定位最后一个节点数
web自动化学习--xpath之last()函数的使用遇到的问题:定位某一个元素,直接复制其xpath,实际上脚本跑起来后发现一直没定位到该元素xpath为:/html/body/div[6]/div[1]/div[1]/ul/li后来发现,如果操作的步骤不一样,比如先点这和点了那,导致该元素的xpath不一致由于不同的操作,xpath可能为:/html/body/div...原创 2019-09-18 17:20:46 · 14721 阅读 · 16 评论 -
python2和python3 中decode和encode在使用上的区别
在python2中,python2的默认编码是ASCII码,在做编码转换时,通常需要以unicode作为中间编码,所以在python2中先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码通常使用如下str.decode('utf-8').encode('utf-8')但是在python3中, 默认编码就是unicode,所以不...原创 2019-04-12 11:53:45 · 1918 阅读 · 0 评论 -
python 2 中解决json.loads()出现的Unicode编码问题
场景:在使用robotframework进行接口测试,需要对返回值进行检查,因为整个返回值的检查非常麻烦,涉及到循环遍历拼装字符串等操作,所以准备通过编写python函数来进行解决整个返回值格式为[{xx:xx,xx:xx},{xx:xx,xx:xx},{xx:xx,xx:xx}],是一个字符串,预期转成一个数组,然后每一个数组里面的元素又是一个字典,需要遍历数组,获取每一个字典里面某一个...原创 2019-04-11 18:20:01 · 8873 阅读 · 0 评论