03-07 APP 控件交互

2021-08-29
阅读 1 分钟
751
元素的常用方法点击方法: element.click() 输入操作: element.send_keys() 设置元素的值: element.set_value() 清除操作: element.clear() 是否可见: element.is_displayed() ;返回 Ture / False是否可用: element.is_enabled()  ;返回 Ture / False是否被选中: element.is_selected()  ;返回 Ture / False获...

03-06 APP-UI自动化测试-等待方式

2021-08-29
阅读 1 分钟
1.2k
与 Web 自动化测试类似。强制等待(不推荐)time.sleep() 隐式等待(全局性)设置一个超时时间,服务端 appium 会在指定的时间内,不停的查找,默认的时间值是 0在服务端等待用法:driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS) 建议在 setup() 方法中加上注意:隐式等待仅对 查找元素 find_element...

03-05 APP自动化测试-常用定位方式

2021-08-29
阅读 1 分钟
878
id 定位 {代码...} accessibility_id 定位 {代码...} xpath 定位 {代码...} 当遇到无法唯一定位的情况,建议使用 xpath 的组合定位uiautomator 定位优点:uiautomator 是 Android 的工作引擎,比 xpath 定位速度快缺点:表达式书写复杂,容易写错,IDE 无提示Uiautomator--Uiselector元素定位滚动查找元素: {代码...}

03-04 元素定位工具

2021-08-29
阅读 1 分钟
1.1k
uiautomatorviewerAndroid 环境推荐使用:uiautomatorviewerAndroid sdk 自带工具运行速度快注意:会与 appium server 冲突使用方式配置环境变量Windows 系统,uiautomatorviewer.bat 文件所在路径AndroidSDK\tools\bin 在命令终端输入 uiautomatorviewer 即可Web-editor(浏览器界面)安装与使用链接源码[链接]

03-03 APP 控件定位

2021-08-29
阅读 2 分钟
810
Android 基础知识Android 是通过容器的布局属性来管理子控件的位置关系布局过程就是把界面上的所有控件,根据其间距的大小,摆放在正确位置Android 的七大布局LineLayout:线性布局RelativeLayout:相对布局FrameLayout:帧布局AbsoluteLayout:绝对布局TableLayout:表格布局GridLayout:网格布局ConstraintLayout:约...

03-02 capabilities 设置

2021-08-29
阅读 2 分钟
860
测试用例的重要部分导入依赖 {代码...} capabilities 设置初始化 driver webdriver.remote 隐式等待,增强用例的稳定性元素定位与操作断言capabilities 设置官方文档说明常用参数键描述值noReset在当前 session 下不会重置应用的状态。默认值为 falsetrue, falsefullReset(iOS)删除所有的模拟器文件夹。(Android) 要清除...

03-01 appium架构介绍与环境安装

2021-08-29
阅读 1 分钟
1.5k
appium 介绍移动端的自动化测试框架可用于测试原生应用、移动网页应用、混合应用跨平台支持 iOS 与 Android 操作系统跨语言:支持 Java、Python底层多引擎可切换生态丰富、社区强大appium 设计理念C/S 设计模式appium 环境安装相关生态工具adb:Android 的控制工具,用于获取 Android 的各种数据及进行操控appium deskto...

02-09 Python库-PyMySQL-连接数据库

2021-08-29
阅读 2 分钟
1.6k
需要连接数据库的场景比如注册接口,同一个账号不能重复注册比如流程性接口:登陆-绑定银行卡-解绑银行卡  测试解绑银行卡的时候,需要先造一个绑定银行卡的数据修改状态的接口,比如一个接口有几种状态: 已绑定-使用中-已注销 测试接口不同的状态时候,需还原数据数据清理,测试完成清理垃圾数据 安装pip install PyMy...

02-08 Python库-yaml

2021-08-28
阅读 1 分钟
1.2k
yaml库安装:pip install yaml Python使用第三方库之【yaml】yaml 语法:YAML 入门教程实际应用: {代码...}

02-07 Python库-pytest

2021-08-28
阅读 7 分钟
1.6k
pytest成熟的全功能Python测试框架简单灵活,容易上手支持参数化测试用例的skip与xfail,自动失败重试等处理能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appium等自动化测试、接口自动化测试(pytest+requests)具有很多第三方插件,并可以自定义扩展:pytest-allure,pytest-xdist(多CPU开发)等支...

02-06 Python库-random

2021-08-28
阅读 1 分钟
821
randomrandom --- 生成伪随机数主要用于获取随机数,或者获取随机值 {代码...}

02-05 Python库-time datetime

2021-08-28
阅读 1 分钟
1k
timePython 日期和时间主要的常用方式:获取时间戳(参考上面链接)时间的格式化,用户生成测试报告时命名(参考上面链接)获取今天,过去某天,未来某天的日期 {代码...}

02-04 Python库-faker

2021-08-28
阅读 1 分钟
1.2k
faker 库安装:pip install faker 使用参考博客:Python-faker的函数效果一览个人使用参考代码: {代码...}

02-03 Python json格式转化

2021-08-28
阅读 2 分钟
992
json 定义轻量级的数据交换格式友好、易于读写:对机器友好,易于解析和生成由列表和字典组成使用场景生成:讲对象生成为字符串,存入文件、数据库,在网络传输等解析:解析来自文件、数据库、网络传输的字符串成 Python 对象跨语言的数据交换:Python 与 Java 等其他语言的数据交互json 库Python 内置库,无需安装。具...

02-02 Python 读写文件 open|os|sys

2021-08-28
阅读 1 分钟
812
openPython open() 函数常用技巧: {代码...} osPython OS 文件/目录方法常用技巧: {代码...} os.pathsysPython中sys模块 {代码...}

02-01 Python 安装与pip

2021-08-28
阅读 1 分钟
1.3k
Python安装安装包下载:Python官网Python和PyCharm环境安装配置pip 依赖管理Python3 的 3.4 版本开始,pip 被直接包括在 Python 的安装包内pypi-pip包管理网站Python 项目中必须包含一个 requirements.txt 文件,用于记录所有依赖包及其精确的版本号,以便其他人在新环境中部署: {代码...} 常用国内 pip 源阿里云:[链...

01-10 Linux-bash编程

2021-08-28
阅读 2 分钟
650
变量命名规则:只能使用英文字母、数字与下划线,首个字符不能以数字开头中间不能有空格,允许使用下划线不能使用标点符号不能使用 bash 里的关键字(可用help命令查看保留关键字)定义与使用变量: {代码...} 变量类型字符串:name="leo"拼接字符串:greeting="hello,"$name"!"数组:array=(v1, v2, v3)取数组中某个值...

01-09 Linux三剑客-awk

2021-08-28
阅读 4 分钟
899
定义把文件逐行读入,以空格为默认分割符,将每行切片,切开的部分再进行后续处理处理流程:格式:awk [参数] 'pattern action' [文件]pattern:正则表达式action:对匹配到的内容执行的命令(默认为输入每行内容)常用参数:FILENAME:awk 浏览的文件名BEGIN:处理文本前要执行的操作END:处理文本后要执行的动作FS:设...

01-09 Linux三剑客-sed

2021-08-28
阅读 1 分钟
1.1k
格式:sed [-hn][-e<script>][-f<script file>][file]-h:显示帮助文档\-n:仅显示 script 处理后的结果\-e<script>:已选项中指定的 script 来处理输入的文本文件\-f<script文件>:已选项中指定的 script 文件来处理输入的文本文件\

01-07 Linux三剑客-grep

2021-08-19
阅读 1 分钟
795
定义根据用户指定的模式(pattern),对目标文件进行过滤,显示被漠视匹配到的行格式:grep [参数] 匹配内容 [文件]常用参数:-v:显示未匹配到的行-i:忽略大小写-n:显示匹配的行号-c:统计匹配的行数-o:仅显示匹配到的字符串-E:使用 ERE,相当于 egrep实战应用:显示含有 root 的行,并显示行号 {代码...} 显示不包...

01-06 Linux常用命令-统计

2021-08-19
阅读 1 分钟
872
排序sort:用于排序-b:忽略开头的空白字符-f:将小写字母看作大写字母-h:根据存储内容大小排序(KB, MB, GB)-n:按数字大小排序,默认顺序-o:将结果写入文件-r:倒序-t:指定分割符-V:按照数字版本排序-k:指定排序的关键字(按哪一列排序),与 -t 参数配合使用 {代码...} {代码...} {代码...}

01-05 Linux常用命令-性能统计

2021-08-19
阅读 5 分钟
1k
CPU 相关w:查看当前系统的负载 {代码...} cat /proc/cupinfo:查看 CPU 相关的基本信息 {代码...} top:显示进程所占的系统资源 {代码...} 测试系统负载,参考命令: {代码...} {代码...} 常用方式:top -p 进程号:只观察一个进程的状态 {代码...} top -p 进程号 -d 间隔时间 -n 刷新次数其他:<!---->-b:批处...

01-04 Linux常用命令-网络相关

2021-08-19
阅读 2 分钟
815
网络相关命令ifconfig:查看网卡信息 {代码...} ping:测试远程主机联通性常用方式:ping -c 次数 IP地址:连接多少次ping -i 间隔时间 IP地址:每次 ping 的间隔时间 {代码...} netstat:打印网络连接状况、所开放的端口、路由表等信息常用方式:netstat -ntpl:打印当前系统启动哪些端口

01-03 Linux常用命令-文本处理

2021-08-19
阅读 1 分钟
789
文本处理vi/vim:文本编辑vim 有三种模式:一般模式:默认编辑模式命令模式一般模式移动光标删除、复制与粘贴编辑模式进入编辑模式的方式:命令模式搜索与替换保存、退出等echo:屏幕输出,相当于 Python 中的 print()>:输出重定向

01-02 Linux常用命令-文件处理

2021-08-19
阅读 4 分钟
867
帮助文档man:用于查看命令的帮助文档格式:man 需要查询的命令例如:man ls相关快捷键使用:退出:q下一页:空格键上下移动:上下方向键--help:也可以用于查看帮助文档格式:需要查询的命令 --help文件管理命令ls:用于列出指定目录或者文件常用方式:ls -l = llls -a:显示所有文件,包含隐藏文件cd:用于切换用户所...

01-01 Linux系统与shell环境准备

2021-08-19
阅读 1 分钟
1.1k
Linux 内核目前流行使用 CentOSLinux 与 Windows 的区别Linux 目录结构由 "/" 根目录开始shell常见的shell,其中,/bin/bash 最为常用远程连接服务器推荐使用:MobaXterm兼具 xshell 与 xftp 的功能,而且样式更美观,功能更强大下载连接:MobaXterm官网下载安装及基本使用注意点:

Selenium 执行JavaScript语句

2020-08-06
阅读 2 分钟
2.4k
Selenium 提供了两种执行 JavaScript 脚本的方法:execute_script:同步执行——常用execute_async_script:异步执行应用场景1:时间输入框有些时间输入框控件,添加了 readonly 属性,限制该控件只读,不可写入,那就无法直接通过 send_keys() 输入内容。对于这种情况的处理方式及步骤:通过 JavaScript 脚本移除 readonl...

Selenium select-下拉列表处理

2020-08-06
阅读 2 分钟
1.9k
针对 select 标签的下拉列表,Selenium 提供了 Select 类进行操作:from selenium.webdriver.support.ui import SelectSelect 类常用方法:序号方法/属性描述1select_by_value()根据值选择2select_by_index()根据索引选择(从1开始)3select_by_visible_text()根据文本选择4deselect_by_value()根据值反选5deselect_by_i...

Selenium frame 切换处理

2020-08-06
阅读 2 分钟
1.9k
HTML 中,frame 标签有3种类型:frameset、frame、iframe。对于 frameset ,跟其他普通标签没有区别,都可以正常定位。而 frame 与 iframe 属于特殊的一种类型,它们内部会包含一个被嵌入的另一份 HTML 文档。在使用 Selenium 打开网页时,并不包含被嵌入的 HTML 文档。如果需要操作被嵌入的 HTML 文档内的元素,必须将 ...

Selenium 屏幕截图

2020-08-06
阅读 1 分钟
4.1k
在自动化测试程序运行时,有些地方出现了 bug,此时,我们希望可以将当前运行的屏幕的截图保存下来,方便开发者后续进行调试与修复。Selenium 提供的屏幕截屏方法:序号方法/属性描述1save_screenshot(filename)截取当前屏幕截图,并保存为指定文件,filename 为指定的保存路径或图片文件名2get_screenshot_as_base64()...