最近在公司,让做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时遇到的问题(一)的更多相关文章

  1. 6-3-2绕过appium的iOS测试

    WDA自带的inspector 1.启动WDA Xcode启动:product-test,适合个人调试 命令行启动:适合持续集成 UDID=$(idevice_id -l) xcodebuild -p ...

  2. appium执行iOS测试脚本并发问题

    appium1.4.X+iOS9.X+xcode7.X: appium1.4.x+iOS9.x+xcode7.x,这一整套的配置做移动端自动化测试是测试人员常用的测试框架.关于,这一套测试框架的并发问 ...

  3. 使用appium框架测试安卓app时,获取toast弹框文字时,前一步千万不要加time.sleep等等待时间。

    使用appium框架测试安卓app时,如果需要获取toast弹框的文案内容,那么再点击弹框按钮之前,一定记得千万不要加time.sleep()等待时间,否则有延迟,一直获取不到: 获取弹框的代码: m ...

  4. Appium的iOS环境搭建

    操作系统的名称:Mac OS X操作系统的版本:10.13.3 xcode 版本:9.2 java 版本:java8_161 appium destop版本:1.7.3 接下来我们开始踏上搭建Appi ...

  5. Appium for iOS setup

    windows下appium设置 之前研究了一段时间的appium for native app 相应的总结如下:                                           ...

  6. iOS 测试在应用发布前后的痛点探索以及解决方案

    作者-芈 峮 前言 iOS 开发从 2010 年开始在国内不断地升温,开发和测试相关的问题不绝于耳.iOS 测试主要涉及哪些内容?又有哪些挑战呢?带着疑问我们开始第一个大问题的讨论. iOS 测试的范 ...

  7. 使用Appium进行iOS的真机自动化测试

    windows不支持appium连接ios,只适用于mac 使用Appium进行iOS的真机自动化测试 安装类库 Homebrew 如果没有安装过Homebrew,先安装[ homebrew ] np ...

  8. 经典软件测试面试题目:Android 和 ios 测试区别?这样回答:稳!

    Android 和  ios 测试区别? App 测试中 ios 和 Android 有哪些区别呢?1.Android 长按 home 键呼出应用列表和切换应用,然后右滑则终止应用:2.多分辨率测试, ...

  9. iOS 导出 ipa 包时 四个选项的意义

    iOS 导出 ipa 包时 四个选项的意义 如图  在 iOS 到处 ipa包的时候 会有四个选项 1.Save for iOS App Store Deployment 保存到本地 准备上传App ...

随机推荐

  1. UVa 12166 修改天平

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  2. 网页中插入视频(object)

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...

  3. 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 ...

  4. angularjs compile和link

    原文:http://www.cnblogs.com/GoodPingGe/p/4361354.html ************************************************ ...

  5. Kali2.0VMwareTools安装

    安装完系统后,配置好apt源,然后执行下列语句可成功安装VMwareTools工具,可实现本机与虚拟机之间的文件复制等功能: apt-get install open-vm-tools-desktop ...

  6. oracle 块的学习——有定义和执行部分的块

    declare --定义变量 v_ename varchar2(5); begin --执行部分 select ename from emp where empno=&no; --在控制台显示 ...

  7. ext.net与extjs的关系

    一.在客户端,ext.net中可以使用extjs的语法. 如发送ajax请求, Ext.Ajax.request({            url: 'Common/getNode',         ...

  8. MVC视图请求流程视图

    /*         *视图请求流程         *当接受到home/index请求时         *先去找viewstart.cshtml视图,再去加载index.cshtml视图      ...

  9. python fork 用法

    import os import sys ips = ( "192.168.45.%s" % i for i in range(1,255)) for ip in ips: pid ...

  10. Codis集群

    一.简介 Codis是一个分布式的Redis解决方案,对于上层的应用来说,连接Codis Proxy和连接原生的Redis Server没有明显的区别(不支持的命令列表),上层应用可以像使用单机的Re ...