使用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 ...
随机推荐
- UVa 12166 修改天平
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...
- 网页中插入视频(object)
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...
- php 上传大文件配置upload_max_filesize和post_max_size选项
php 上传大文件配置upload_max_filesize和post_max_size选项 (2014-04-29 14:42:11) 转载▼ 标签: php.ini upload _files[f ...
- angularjs compile和link
原文:http://www.cnblogs.com/GoodPingGe/p/4361354.html ************************************************ ...
- Kali2.0VMwareTools安装
安装完系统后,配置好apt源,然后执行下列语句可成功安装VMwareTools工具,可实现本机与虚拟机之间的文件复制等功能: apt-get install open-vm-tools-desktop ...
- oracle 块的学习——有定义和执行部分的块
declare --定义变量 v_ename varchar2(5); begin --执行部分 select ename from emp where empno=&no; --在控制台显示 ...
- ext.net与extjs的关系
一.在客户端,ext.net中可以使用extjs的语法. 如发送ajax请求, Ext.Ajax.request({ url: 'Common/getNode', ...
- MVC视图请求流程视图
/* *视图请求流程 *当接受到home/index请求时 *先去找viewstart.cshtml视图,再去加载index.cshtml视图 ...
- python fork 用法
import os import sys ips = ( "192.168.45.%s" % i for i in range(1,255)) for ip in ips: pid ...
- Codis集群
一.简介 Codis是一个分布式的Redis解决方案,对于上层的应用来说,连接Codis Proxy和连接原生的Redis Server没有明显的区别(不支持的命令列表),上层应用可以像使用单机的Re ...