WDA

基于facebook-wda的iOS自动化操作实践记录

大城市里の小女人 提交于 2021-02-14 09:14:45
[本文出自天外归云的博客园] 原理 对于iOS自动化操作,主要靠WebDriverAgent来完成。在Mac电脑上连接真机iPhone,运行WebDriverAgentRunner会在Mac端启动WDA服务器,并在手机iPhone端安装一个WebDriverAgentRunner应用。我们通过编写脚本来与WDA服务器通信,告诉WDA服务器我们想要如何操作iPhone手机,WDA服务器与安装在手机iPhone端的WebDriverAgentRunner应用通信并通过该app发送模拟指令来实现操作iPhone手机 安装过程 1. 安装WebDriverAgent:https://github.com/facebook/WebDriverAgent 2. 及其依赖的库Carthage:https://github.com/Carthage/Carthage 3. 需要npm的支持 启动与停止WDA服务器 方式1 :命令行启动模拟器 xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'platform=iOS Simulator,name=iPhone 6' test 方式2:在真机上运行参考这篇文章进行配置: ATX 文档 - iOS 真机如何安装

每日总结之ios自动化篇章

半城伤御伤魂 提交于 2020-11-04 08:09:48
ios的ui自动化之淘宝喵喵组队篇 简介:最近淘宝的喵喵组队,京东的拉人头组队频繁的出现在我的微信聊天中,那么今天我们的主题就是如何使用自动化进行做任务升级。 开始步骤 首先手上的实现设备如下: Mac电脑一台,Xcode 12.1,iPhone真机一台,系统14.0(最新的xcode,最新的ios系统,然后结果就是坑不胜防) 工具依赖地址 appium依赖的是Facebook开源过的wda工具,目前Facebook不维护了,但是appium自己在基础上还在维护,github地址 https://github.com/appium/WebDriverAgent(具体的使用操作拒不介绍了,自行查看github注解,如有疑问问度娘) python脚本 简易的脚本(由于xocde12问题较多,ios14系统appium目前识别元素不支持,则部分猜测不出的元素直接使用点击代替) import wda import time c = wda.USBClient("5b1cda98bbca145d794f7bdd0001bdc2e6704a25", port=8100) while True: s = c.session("com.taobao.taobao4iphone", alert_action="accept") time.sleep(10) print("进入游戏内") c

从快手薅羊毛说起之Appium/原生XCUITest/原生UIAutomator菜鸟级入门

故事扮演 提交于 2020-07-28 19:38:44
1. 需求 像这样进入某一个账号(一般是发的视频时间都比较长的号),每个视频停留60s,然后自动往后翻,赚取金币,小弟两个账号已经小赚500了,嘻嘻。 2. 实现 2.1原生XCUITest 首先配置好xcode开发环境。通过xcode建立新项目,选择Single View App后 勾选UI Tests 我们就可以在后缀UITests的文件夹下快乐的编写我们的UI自动化代码了 这儿我偷了个懒,需要程序打开程序后我们手动进入某一个账号,接下来就倒杯肥宅快乐水等着哗哗收钱了。 其实有兴趣可以让进入某一个账号这一个过程也自动化起来。最后选中这个Target执行Command+u就可以了。 2.2 原生UIAutomator 首先配置好AndroidStudio开发环境。接着就是我们熟悉的傻瓜式无脑操作,先建立一个空白的AndroidApp项目. 接着就是在androidTest目录下撸我们的代码。 直接在指定设备启动我们的测试用例就行了。 2.3 Appium之iOS 推荐配置Appium+iOS环境的文章: iOS 自动化测试踩坑(一): 技术方案、环境配置与落地实践 iOS 自动化测试踩坑(二):Appium 架构原理、环境命令、定位方式 Appium主要是借助WDA对ios设备进行UI控制。启动Appium Server后,此处利用pycharm编程。 2.4

WebDriverAgent入门篇-安装和使用

空扰寡人 提交于 2020-05-09 16:04:38
前言 在群里看到WebDriverAgent这个东西,出于好奇,便开始百度+谷歌,最终对其有了简单的了解。也对自动化测试也有了一个初步的了解。接下来你看到的是对WebDriverAgent的一些介绍。 正文 WebDriverAgent简称WDA。它是由Facebook推出的一款移动端测试框架。它是在iOS客户端实现了一个WebDriver的Server,借助这个server,我们可以远程控制iOS设备进行测试。 它更多的是测试人员进行自动化测试用的,所以在 testerhome 上有一些文章对其进行了介绍。具体的文章链接可以参见文末的附录。 原理 据官方介绍,它是通过链接XCTest.framework和调用苹果的API直接在设备上执行命令。在网上看到一张图: 先忽略这张图,我们可以先看一个Xcode自带的软件:Accessibility Inspector。直接打开Xcode,然后点击菜单的Xcode-->Open Developer Tool即可找到该软件。这个软件按照名称来理解的话简单可以理解为可用性检查员。通过选择不同的设备(Mac、Simulator、iPhone),可以对其进行检查,例如我直接选择我的mac,然后选择微信那个进程,你会发现该软件的首页是Quicklook,也就是对微信APP的一个概览。你可以点击页面上的类似瞄准器的按钮,当你选中之后,颜色会变成蓝色

WDA入门教程Ⅰ:Web Dynpro for ABAP 入门(转)

我们两清 提交于 2020-04-23 07:35:30
转自:https://www.jianshu.com/p/68c1592f1a87 WDA全称Web Dynpro for ABAP,也写作WD4A或WDA,是用于在ABAP环境中开发Web应用程序的SAP标准UI技术。 它由运行时环境和图形开发环境组成,其中包含集成在ABAP Workbench(SE80)中的特殊Web Dynpro工具。 本教程提供了开发一个WDA程序的分步指南。 目录: 创建WDA对象 创建视图 添加UI元素和视图 创建组件控制器上下文 数据映射 从组件控制器访问数据 定义导航模式 创建应用 测试WDA应用 1. 创建WDA对象 进入事务码SE80,在左侧对象框列表中选择“Web Dynpro组件/接口”,输入对象的名称“Z_TUTORIAL1”,然后回车,系统将询问是否创建此对象,单击“是”。 创建Z_TUTORIAL1 输入对象描述和要创建的视图名称,回车。将会出现一个要求分配包的对话框,这里选择本地对象。 输入描述 现在,WDA对象就创建好了。 WDA概览 2. 创建视图 视图包含用户与应用程序交互所需的UI元素,SAP提供了许多不同的类型的UI元素。 这里需要创建两个视图,第一个视图已经在创建对象的时候自动创建好了。 视图Start 我们再来创建一个Result视图。 创建Result视图 输入描述 保存并激活所有对象之后,就能看到下图了。 视图 3

iOS自动化探索(四)自动化测试框架pytest

元气小坏坏 提交于 2020-04-17 23:58:32
自动化测试框架 - pytest pytest是Python最流行的单元测试框架之一, 帮助更便捷的编写测试脚本, 并支持多种功能复杂的测试场景, 能用来做app测试也能用作函数测试 官方文档: https://docs.pytest.org/en/latest/ pytest具有以下优点: 允许使用assert进行断言 自动识别测试脚本、类、函数 可用于管理小型或者参数类型的测试数据或资源 兼容unittest和nose测试框架 支持Python2.7/Python3.4+ 丰富的插件支持,超过315个插件支持 pytest安装 pip install -U pytest 如果提示下面的错误,说明是pip的版本太老了, 要更新下: Could not find a version that satisfies the requirement pytest (from versions: ) No matching distribution found for pytest 更新方式: easy_install --upgrade pip 官方示例 准备一个test_sample.py, 内容如下: def inc(x): return x + 1 def test_answer(): assert inc( 3 ) == 5 在文件所在目录执行: pytest 这里我们做下说明:

微信小程序的自动化测试框架

时光怂恿深爱的人放手 提交于 2020-02-26 14:32:51
微信发布了小程序的自动化测试框架Minium,提供了多种运行验证方式,其特点: 支持一套脚本,iOS & Android & 模拟器,三端运行 提供丰富的页面跳转方式,看不到也能去得到 可以获取和设置小程序页面数据,让测试不止点点点 可以直接触发小程序元素绑定事件 支持往 AppSerive 注入代码片段 可以调用部分 wx 对象上的接口 官方地址如下: https://git.weixin.qq.com/minitest/minium-doc/tree/master minium 是为小程序专门开发的自动化框架, 提供了 Python 和 JavaScript 版本。使用 minium 可以进行小程序 UI 自动化测试, 但是 minium 的功能不止于仅仅是 UI 自动化, 甚至可以使用 minium 来进行函数的 mock, 可以直接跳转到小程序某个页面并设置页面数据, 做针对性的全面测试, 这些都得益于我们开放了部分小程序 API 的能力。除此之外,小程序有部分组件使用了系统原生的组件,对于这部分的组件,我们也基于 uiautomator 和 wda 做了补充。 环境依赖 Python 3.x 微信公共库版本 >= 2.7.3 下载并安装稳定版微信开发者工具,工具下载地址: https://developers.weixin.qq.com/miniprogram/dev