python
福多多的福
放下你的三分钟热度,静下心来做你该做的事,该好好努力了!
展开
-
【python】return和yield的区别
return和yield都表示返回的意思,return的后面不能有代码,返回值之后不再执行后续的代码;yield返回后,可以接代码,会继续执行。yield是个生成器,可以多次返回数据原创 2024-01-25 10:56:11 · 522 阅读 · 0 评论 -
python,如何整体取消tab缩进【反方向缩进】/快速导包
1、整体取消tab缩进【反方向缩进】:shift+tab键2、选中要缩进的代码块:按一下tab键原创 2023-02-16 13:04:16 · 3649 阅读 · 1 评论 -
自动化代码过程中的一些命名规范,项目结构说明
图片功能类别(必选)-图片模块名称(可选)-图片功能名称(可选)-图片分辨率(可选)标准变量采用驼峰式命名:大驼峰(首字母大写),小驼峰(首字母小写)图片分辨率(注意:小程序构建不支持@符号)handle:处理,点击、滚动等交互事件。output:直观、语义化、可读性强;orderdetail:订单列表。can:判断是否可执行某个动作。has:判断是否含有某个值。is:判断是否为某个值。toggle:切换状态。超过2个考虑封装成对象。confirm:确认。要求小于等于2个参数。logo:logo类。原创 2022-11-16 17:59:45 · 628 阅读 · 0 评论 -
【python】time等待的多种用法
第一种等待方式:强制等待有时候并不需要等待这么久第二种等待方式:智能等待原创 2022-06-16 09:03:21 · 1833 阅读 · 0 评论 -
【uiautomator2 】app最重要的操作:点击、滑动、输入、按键、截屏操作
app主要包括4大操作:通过全局坐标点击,元素不方便定位的时候使用d.click(x,y)可以通过绝对坐标或者百分比进行操作d.click(x,y)二、app滑动操作 swipe根据位移滑动需要4个参数:startx,starty,endx,endy2.扩展版的滑动操作3.先定位元素,再使用元素对象滑动三、app输入操作 send_keys()1.输入操作 send_keys()2.清空操作 clear_text()四、app截屏操作1.直接通过文件名截屏 scree原创 2022-06-14 09:59:34 · 7767 阅读 · 2 评论 -
【uiautomator2 】元素定位的三种方法
一、页面的构成安卓手机:XMLH5页面:HTML二、元素(控件)的构成三、元素定位的方式text,textContains,textMatches,textStartswithclassName,classNameMatchesdescription,descriptionContains,descriptionMatches,descriptionStartswithcheckable,checked,clickable,longClickablescrollable,enabled,foc原创 2022-06-13 13:48:30 · 6769 阅读 · 0 评论 -
【python】logging日志打印重复输出冗余日志
日志重复输出,且数量递增。原因分析:没有移除handler解决方案:在日志记录完之后removeHandler。方法一(推荐):用前判断,在log方法里做判断,如果这个logger已有handler,则不再添加handler。方法二:每次创建不同name的logger,每次都是新logger,不会有添加多个handler的问题。方法三(兼容性较差,不建议):每次记录完日志之后,调用removeHandler()把这个logger里的handler移除掉。原创 2022-03-07 17:17:10 · 5891 阅读 · 4 评论 -
【python】logging日志实时打印到控制台+输出到文件【总结篇】
一、日志:日志跟踪运行软件所发生事件的方法;日志的作用:信息查询、服务诊断、数据分析1.日志等级 debug: 调试信息 info: 描述重要事件 warning:警告信息 error: 报错异常信息 critical: 严重错误2.python中如何生成日志:logging模块(logging模块是python的内置模块:可以生成日志,包括可以设置...原创 2022-03-02 13:14:51 · 16895 阅读 · 4 评论 -
【python】logging日志实时打印到控制台+输出到文件(pytest)
一、日志的输出:1、日志默认的输出等级为:warning级别及以上的2、想修改日志的默认输出等级?通过logging.basicConfig(level=“INFO”)----info需要用大写3、想知道日志是什么时候打印出来的,以及其他参数?通过logging.basicConfig(format=console_fmt)4、如果要同时添加这2个参数,需要写在一行代码中,logging.basicConfig(level=“INFO”,format=console_fmt)%(name)s:名原创 2022-03-01 17:48:58 · 12203 阅读 · 0 评论 -
【pytest】pytest.ini执行时报错:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xaa in position 15
写好run.py文件和pytest.ini文件后,通过执行run.py的时候报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xaa in position 15: illegal multibyte sequence原创 2022-02-22 10:28:01 · 1706 阅读 · 0 评论 -
python,快速导包【快捷键】
python,快速导包【快捷键】原创 2022-01-25 10:08:25 · 5498 阅读 · 1 评论 -
python,执行pip报错:Fatal error in launcher: Unable to create process using ‘“D:\tools\python.exe“ (已解决)
报错:通过cmd->pip的时候报错:Fatal error in launcher: Unable to create process using '"D:\tools\python.exe" "D:\tools\python310\Scripts"原因分析:1)安装python时,选择安装目录为:D:/tools2)本来以为python会自动再生成一个python的文件夹,结果没有生成。所以待安装完成后,我手动修改python的目录为:D:/tools/python310,将对应文件都原创 2022-01-18 14:12:45 · 8178 阅读 · 0 评论 -
【uiautomator2 】第一课:环境搭建 -m uiautomator2 init
1、连接安卓手机1)安卓手机:开启开发者选项2)进入cmd,执行adb devices -l,可以看到已连接的设备列表2、python 安装uiautomator21)pip3 install -U uiautomator23、安卓设备安装atx-agent(包含httprpc服务的apk)1)python3 -m uiautomator2 init2)提示success,代表atx-agent初始化成功# init就是所有USB连接电脑的手机上都安装uiautomator2python原创 2022-01-13 15:54:54 · 2667 阅读 · 0 评论 -
【uiautomator2】第二课:uiautomator2的基本指令:连接设备,app的常用操作指令等
import uiautomator2 as u2# 连接本地设备device = u2.connect()# 打印设备基本信息print(device.device_info)# 定位元素el_wechat = device(text='微信')# 操作元素el_wechat.click()标准库,则直接导入即可如果是第三方库,则需要先安装1)pip install uiautomator22)pycharm->setting->uiautomator2---原创 2022-01-18 12:40:36 · 4572 阅读 · 0 评论 -
【uiautomator2 】第三课:set_text和send_key都输入失败,无法录入对应的值
执行set_text()方法时,可以看到调起键盘了,但输入内容到输入框时,一闪而过,没有输入成功,仍显示默认提示文案。1、如果可以定位到元素,则直接通过set_text就可以输入op_login_phone = d(text="请输入登录账号").set_text("18800000001")op_login_pwd = d(text="请输入登录密码").set_text("123456")2、如果定位不到元素,需要使用send_keys方法,以及切换输入法# 切换输入法d.set_fast原创 2022-01-21 17:57:32 · 4544 阅读 · 0 评论 -
【uiautomator2 】判断待测试的app是否正在运行
问题描述:我们在做自动化测试的时候,有时候待测试的app已经打开,但未停留在初始页面,需判断待测试的app是否正在运行,如正在运行,则先关闭该app。# Time:2022 2022/1/19 10:47# Author: Jasmay# -*- coding: utf-8 -*-import uiautomator2 as u2import time# 连接设备,目前电脑仅连接有一台设备,故未传参数;try: d = u2.connect()except Exception a原创 2022-01-19 11:10:16 · 1812 阅读 · 0 评论 -
【pycharm】设置文件头:作者、时间、光标位置
【位置】找到File–>Settings–>Code Style–>File and Code Templates–>Python Script上面的 的后面也可以换上自己的名字.注意, 一定要勾选那个 Enable Live Templates, 否则这句 设置光标的位置内容就无法生效.原创 2022-06-05 17:27:14 · 1594 阅读 · 0 评论 -
【WEditor】WEditor的安装,报错的解决方案:no such option: --build-dir或者UnicodeDecodeError: ‘gbk‘
【问题描述】通过cmd,进行安装weditor,报错:提示UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xad错误,尝试了多种方式依然报错【原因分析】是由于最新版本的WEditor是:0.6.5,【解决方案】安装低版本的WEditor,安装成功:走过的弯路,以供大家参考和借鉴:【问题描述】通过pycharm安装weditor时,一直提示:no such option: --build-dir 【原因分析】PyCharm 依赖于 --build-d原创 2022-06-05 15:21:07 · 2709 阅读 · 0 评论 -
【ADB】adb devices 出现devices offline的多种解决方法
【问题描述】使用连接设备的时候,提示offline【原因分析】使用命令:,查看版本后发现是1.0.26(版本较低,现在的很多设备已经不再支持了)【解决方案】将:adb的版本更新到了1.0.36,成功解决了问题(在网上找最新版本的adb安装包,下载解压在原路径)记录下走过的弯路:**问题一:**刚开始输入,设备列表为空【解决方法】我的电脑–>属性–>设备管理器–>详细信息–>硬件ID,记录VID后的数字,此处为22D9.在电脑找到adb_usb.ini文件,打开,在文件中添加刚才找到的数原创 2022-06-04 21:19:54 · 55843 阅读 · 8 评论 -
python,python3+pytest+uiautomator2+weditor+allure【Android自动化测试】
1、核心工具python3+pytest+atxserver2+airtest+allurepytest:组织测试用例atxserver2:设备管理平台airtest:设备驱动allure:测试报告-----未完待续原创 2022-01-11 16:13:02 · 2358 阅读 · 0 评论 -
python,环境搭建(Android自动化测试)
1、核心工具python3+pytest+uiautomator2+weditor+allurepytest:组织测试用例uiautomator2:Android设备驱动weditor:Android APP元素定位allure:测试报告1)python最新版本出到4.0了,但是实际使用4.0和allure有些不兼容.所以推荐使用3.8版本的pytest2)uiautomator2uiautomator2也是python的一个类库,用pip安装即可.pip3 inst.原创 2021-08-05 15:50:48 · 608 阅读 · 0 评论