使用appium进行ios测试,启动inspector时遇到的问题(一)
最近在公司,让做ios的自动化测试,因为以前做过android的自动化测试,用的也是appium,觉得没什么,结果一开始在搭建环境就遇到了很多的问题,现在将我遇到的问题,以及解决方法,给大家分享出来。(ps:吐槽一下testhome,发了两个帖子一个提问帖一个心得分享帖,全都给拉到违规区了,问题也没有人给看)
进入正题,说一下我的环境:
xcode 7.1.1
simulator 9.1
appium 1.4.13
iphone 5s ios9.1
首先说一下,appium 在ios版本选择这一块最高版本到了8.4,可能大家会有疑问,我是9.1没有选项怎么办啊。
这个问题提很好解决,大家仔细看看,在设置中那个文本框是可以手动输入,可以键盘输入的啊,输入之后记得勾选 下面设置 IOS Setting->advanceed ->Use Native Instruments Library,或者在Developer Settings 勾选enable、Custom Server Flags 并在加入 --native-instruments-lib 请参考:https://discuss.appium.io/t/has-anyone-been-able-to-use-ios-simulator-9-1-with-appium-1-4-13/6887/8
可能大家常见到的问题是这个,发现在启动inspector后,包也装到simulator 可是应用已一启动就闪退,这个问题是因为iOS 的不跨平台,编译时必须指定运行在 arm 还是 x86 上。具体在打包时的区别是使用的 sdk 不同。解决这个问题就是直接使用xcode将包安装在手机虚拟机上,然后在启动inspector就可以了。(这里我有个问题,但我选择使用bundleID启动时,提示我找不到包。而使用app path 发现包已经安装,就不会再次从新安装,会直接启动已经安装的包)
在使用虚拟手机测试的过程中,在使用sendkeys调起输入法的时候,可能会报错:'An error occurred while executing user supplied JavaScript 这个问题我只有在虚拟手机上遇到过,真机测试时没有遇到过这种情况。可能是不能调起输入法造成的。
下面说一下使用真机启动inspector时,遇到的问题,真机启动遇到问题,先贴个log
info: [debug] [INST STDERR] 2015-12-11 17:54:01.261 instruments[10308:11044258] WebKit Threading Violation - initial use of WebKit from a secondary thread.
info: [debug] [INST STDERR] 2015-12-11 17:54:07.289 instruments[10308:11044422] Attempting to change event horizon while disengage
info: [debug] [INST STDERR] Instruments Trace Error : Target failed to run: The operation couldn’t be completed. (FBSOpenApplicationErrorDomain error 3.) : Failed to launch process with bundle identifier 'com.zipingfang.1'
info: [debug] [INST STDERR] 2015-12-11 17:54:07.289 instruments[10308:11044241] Attempting to change event horizon while disengage
info: [debug] [INSTSERVER] Instruments exited with code 253
info: [debug] Killall instruments
info: [debug] Instruments crashed on startup
info: [debug] Attempting to retry launching instruments, this is retry #1
info: [debug] Killall iOS Simulator
没错就是 Instruments crashed 这个问题直到今天我才解决了,使用真机进行ios测试要注意以下几点:
参考:https://discuss.appium.io/t/ios-instruments-crashed-on-startup/1191/14
1.要有开发者账号
2.设备已经被添加至开发者设备
3.使用xcode debug 安装应用至手机
4.描述文件中 信任此应用的证书
5.在手机设置 -开发者中 勾选 使用UI Automation.
会继续更新,如果不对欢迎指正
使用appium进行ios测试,启动inspector时遇到的问题(一)的更多相关文章
- 6-3-2绕过appium的iOS测试
WDA自带的inspector 1.启动WDA Xcode启动:product-test,适合个人调试 命令行启动:适合持续集成 UDID=$(idevice_id -l) xcodebuild -p ...
- appium执行iOS测试脚本并发问题
appium1.4.X+iOS9.X+xcode7.X: appium1.4.x+iOS9.x+xcode7.x,这一整套的配置做移动端自动化测试是测试人员常用的测试框架.关于,这一套测试框架的并发问 ...
- 使用appium框架测试安卓app时,获取toast弹框文字时,前一步千万不要加time.sleep等等待时间。
使用appium框架测试安卓app时,如果需要获取toast弹框的文案内容,那么再点击弹框按钮之前,一定记得千万不要加time.sleep()等待时间,否则有延迟,一直获取不到: 获取弹框的代码: m ...
- Appium的iOS环境搭建
操作系统的名称:Mac OS X操作系统的版本:10.13.3 xcode 版本:9.2 java 版本:java8_161 appium destop版本:1.7.3 接下来我们开始踏上搭建Appi ...
- Appium for iOS setup
windows下appium设置 之前研究了一段时间的appium for native app 相应的总结如下: ...
- iOS 测试在应用发布前后的痛点探索以及解决方案
作者-芈 峮 前言 iOS 开发从 2010 年开始在国内不断地升温,开发和测试相关的问题不绝于耳.iOS 测试主要涉及哪些内容?又有哪些挑战呢?带着疑问我们开始第一个大问题的讨论. iOS 测试的范 ...
- 使用Appium进行iOS的真机自动化测试
windows不支持appium连接ios,只适用于mac 使用Appium进行iOS的真机自动化测试 安装类库 Homebrew 如果没有安装过Homebrew,先安装[ homebrew ] np ...
- 经典软件测试面试题目:Android 和 ios 测试区别?这样回答:稳!
Android 和 ios 测试区别? App 测试中 ios 和 Android 有哪些区别呢?1.Android 长按 home 键呼出应用列表和切换应用,然后右滑则终止应用:2.多分辨率测试, ...
- iOS 导出 ipa 包时 四个选项的意义
iOS 导出 ipa 包时 四个选项的意义 如图 在 iOS 到处 ipa包的时候 会有四个选项 1.Save for iOS App Store Deployment 保存到本地 准备上传App ...
随机推荐
- java 枚举类型 构造函数及用法
// 1. 定义枚举类型 public enum Light { // 利用构造函数传参 RED (1), GREEN (3), YELLOW (2); // 定义私有变量 private int n ...
- Git分布式版本管理工具基本使用方法
一.Git简介 早先linux内核代码托管在BitKeeper,这个是商业的,但是免费给linux社区使用: linux社区有个人试图破解BitKeeper,被BitKeeper发现后不再免费提供使用 ...
- java读取properties文件工具
public class PropertiesUtil { public static String get(String filePath, String key) { String val = n ...
- windows平台编译bgfx
1.下载bgfx工程并解压到任意目录,链接:https://github.com/bkaradzic/bgfx/ 2.下载bx工程并解压到bgfx工程所在父目录,链接:https://github.c ...
- Servlet页面注册用户的小程序(一)
本实例实现用userreg.jsp页面中的表单提交注册请求,把注册信息提交给regservlet写入数据库并且查询新用户显示出来. 一.准备工作. 1.jdbc数据驱动开发包mysql-connect ...
- PetaPoco 批量插入数据
网上找的代码,还没经过验证 /// <summary> /// Bulk inserts multiple rows to SQL /// </summary> /// < ...
- 【HDU1257】最少拦截系统(贪心)
最少拦截系统 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- 10天学会phpWeChat——第三天:从数据库读取数据到视图
在第二天,我们创建了我们的第一个phpWeChat功能模块,但是比较简单.实际生产环境中,我们不可能有如此简单的需求.更多的情况是数据存储在MySql数据库中,我们开发功能模块的作用就是将这些数据从M ...
- 网站推广优化(SEO,网站关键字优化,怎么优化网站,如何优化网站关键字)
网站推广优化教程100条(完整版)下面介绍新手建站推广完美教程,各位根据自己的实际情况酌情选用: 1.准备个好域名.①.尽量在5位数内,当然也不一定,反正要让用户好记.(看个人):②.尽量用顶级的域名 ...
- 调用C++动态链接库出现错误
解决方式:将托管 System.String 中的内容复制到非托管内存(Marshal.StringToHGlobalAnsi) class HttpsSend { [DllImport(" ...