随笔分类 -  appium

1 2 下一页
python+Appium自动化:python多线程多并发启动appium服务
摘要:Python启动Appium 服务 使用Dos命令或者bat批处理来手动启动appium服务,启动效率低下。如何将启动Appium服务也实现自动化呢? 这里需要使用subprocess模块,该模块可以创建新的进程,并且连接到进程的输入、输出、错误等管道信息,并且可以获取进程的返回值。subproce 阅读全文
posted @ 2020-03-24 10:10 bug无处不在 阅读(1170) 评论(0) 推荐(0)
python+Appium自动化:基于多进程启动多设备
摘要:先分享一个appium参数 参数 默认值 含义 -U,--udid null 连接物理设备的唯一设备标识符 -a,--address 0.0.0.0 监听的ip地址 -p,--port 4723 监听的端口 -bp,--bootstrap-port 4724 连接Android设备的端口号(Andr 阅读全文
posted @ 2020-03-20 17:56 bug无处不在 阅读(801) 评论(0) 推荐(1)
python+Appium自动化:cmd中输入appium出错 Error: uncaughtException........
摘要:用cmd启动appium时间,提示出错,信息如下: C:\Users\XXXXX>C:\Appium\node.exe C:\Appium\node_modules\appium\bin\appium.js error: uncaughtException: Cannot find module ' 阅读全文
posted @ 2020-03-18 17:04 bug无处不在 阅读(1209) 评论(0) 推荐(0)
python+Appium自动化:bat执行测试用例
摘要:由于使用pycharm来执行用例时,系统资源占用比较大,所以可以用cmd或者bat来执行用例。 启动appium服务: appium_start.bat @echo off appium pause @echo off 为关闭“回显”,让命令更加简洁 运行脚本: run.bat @echo off 阅读全文
posted @ 2020-03-18 16:55 bug无处不在 阅读(379) 评论(0) 推荐(0)
python+Appium自动化:BSTestRunner执行测试用例,生成测试报告
摘要:定义执行用例开始、结束,写入公共模块中,脚本如下: myunit.py import unittest from TB_test.common.TB_caps import appium_desired import logging class startend(unittest.TestCase) 阅读全文
posted @ 2020-03-18 14:42 bug无处不在 阅读(540) 评论(0) 推荐(0)
python+Appium自动化:框架设计
摘要:之前学习了appium各种元素定位、手势操作,数据配置,pageobject设计模型等等 ,相对比较零散,没有完全的整合起来。 正所谓万丈高楼平地起,搭建一个完整的自动化框架变得很重要。 框架功能 测试包管理 业务功能封装 测试用例封装 截图处理 断言处理 日志管理 测试报告生成 数据配置 数据驱动 阅读全文
posted @ 2020-01-16 17:28 bug无处不在 阅读(488) 评论(0) 推荐(0)
python+Appium自动化:PageObject设计模型
摘要:PageObject设计模型 Page Object模式是使用Selenium的广大同行最为公认的一种设计模式。 在设计测试时,把元素和方法按照页面抽象出来,分离成一定的对象,然后再进行组织。 体现在对界面交互细节的封装,测试在更上层使用页面对象,在底层的属性或者操作的更改不会中断测试。 减少代码重 阅读全文
posted @ 2019-12-26 16:40 bug无处不在 阅读(514) 评论(0) 推荐(0)
python+Appium自动化:logging配置代码分离
摘要:配置文件信息log.conf: [loggers]keys=root,simpleExample[logger_root]level=DEBUGhandlers=consoleHandler,fileHandler[logger_simpleExample]level=DEBUGhandlers=c 阅读全文
posted @ 2019-12-24 10:32 bug无处不在 阅读(446) 评论(0) 推荐(0)
python+Appium自动化:日志logging模块
摘要:日志级别 debug、info、warn、error、critical五个级别 logging模块构成(四部分) logger(记录器,用于日志采集) Handler(处理器,将日志记录发送到合适的路径) Filter(过滤器,提供了更好的粒度控制,决定输出哪些日志记录) Formatter(格式化 阅读全文
posted @ 2019-12-23 17:41 bug无处不在 阅读(1187) 评论(0) 推荐(0)
python+Appium自动化:yaml配置capability
摘要:场景 学习了yaml之后就是要将capability的各项参数值与代码分离开。 先创建一个capability.yaml文件,把各项参数存放在其中,然后用load()进行读取。 例子: capability.yaml platformName: Android deviceName: U4KF9HS 阅读全文
posted @ 2019-12-23 12:04 bug无处不在 阅读(518) 评论(0) 推荐(0)
python+Appium自动化:读取Yaml配置文件
摘要:Yaml简介 Yaml:"Yet Another Markup Language"(是一种标记语言),但为了强调这种语言以数据做为中心,而不是以标记语言为重点,而用反向缩略语重命名。 appium中,yaml 是专门用来写配置文件的语言,语言很简洁、强大,格式有点类似于json,感觉要比json强大 阅读全文
posted @ 2019-12-20 17:18 bug无处不在 阅读(590) 评论(0) 推荐(0)
python+Appium自动化:MultiAction多点触控
摘要:MultiAction MultiAction 是多点触控的类,常用于模拟用户多点操作。 主要包含这add()还有perform()两个方法,模拟多点触控,需要导入TouchAction还有MultiAction两个模块。 from appium.webdriver.common.multi_act 阅读全文
posted @ 2019-12-20 11:21 bug无处不在 阅读(778) 评论(0) 推荐(0)
python+Appium自动化:TouchAction九宫格实战
摘要:TouchAction Touch Action包含一系列操作,比如按压、长按、点击、移动、暂停。 使用TochAction需要先导入对应的模块 from appium.webdriver.common.touch_action import TouchAction 按压 使用到press()方法, 阅读全文
posted @ 2019-12-19 16:57 bug无处不在 阅读(696) 评论(0) 推荐(0)
python+Appium自动化:app滑动操作swipe
摘要:swipe Appium使用滑动操作用到了swipe方法,定义如下: swipe(self, start_x, start_y, end_x, end_y, duration=None) 从一个点滑动到另外一个点 start_x 是开始滑动的x坐标, start_y 是开始滑动的y坐标 end_x  阅读全文
posted @ 2019-12-18 17:41 bug无处不在 阅读(2277) 评论(0) 推荐(0)
python+Appium自动化:H5元素定位
摘要:问题思考 在混合开发的App中,经常会有内嵌的H5页面。那么这些H5页面元素该如何进行定位操作呢? 解决思路 针对这种场景直接使用前面所讲的方法来进行定位是行不通的,因为前面的都是基于Andriod原生控件进行元素定位,而Web网页是单独的B/S架构,两者的运行环境不同因此需要进行上下文(conte 阅读全文
posted @ 2019-12-18 15:34 bug无处不在 阅读(2042) 评论(0) 推荐(0)
python+Appium自动化:屏幕截图
摘要:屏幕截图 主要是为了程序出现错误时,开发除了可以分析日志之外,还可以进行截图更好地去定位问题。 截图一般有两种方法: 第一种save_screenshot(self,filename) driver.back()driver.save_screenshot('toast.png') 保存至当前的文件 阅读全文
posted @ 2019-12-16 11:55 bug无处不在 阅读(1446) 评论(0) 推荐(0)
python+Appium自动化:toast定位
摘要:Toast简介 Toast是一种简易的消息提示框。 当视图显示给用户,在应用程序中显示为浮动。和Dialog不一样的是,它永远不会获得焦点,无法被点击。 用户将可能是在中间键入别的东西。Toast类的思想就是尽可能不引人注意,同时还向用户显示信息,希望他们看到。 而且Toast显示的时间有限,Toa 阅读全文
posted @ 2019-12-16 11:03 bug无处不在 阅读(1322) 评论(0) 推荐(0)
python+Appium自动化:元素等待时间
摘要:元素等待时间 为什么要设置等待时间呢?主要是因为界面加载时,为了防止元素还未出现影响后续的操作。 主要有三种方式:强制(线性)等待、隐式等待、显式等待 适用于appium和selenium 强制(线性)等待 import time #休眠5秒钟 time.sleep(5) 隐式等待 只能设置一个元素 阅读全文
posted @ 2019-12-15 11:32 bug无处不在 阅读(755) 评论(0) 推荐(0)
python+Appium自动化:各种元素定位方法
摘要:name定位 driver.find_element_by_name('飞利浦净水').click() 测试结果报错:selenium.common.exceptions.InvalidSelectorException: Message: Locator Strategy 'name' is no 阅读全文
posted @ 2019-12-12 11:15 bug无处不在 阅读(1390) 评论(0) 推荐(0)
python+Appium自动化:记录遇到的坑
摘要:1.打开 uiautomatorviewer同步的的时候突然报错 Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException 解决:试了很多方法,重新开启uiautomatorviewer也没有解决,最后 阅读全文
posted @ 2019-12-06 17:10 bug无处不在 阅读(754) 评论(0) 推荐(0)

1 2 下一页