Appium - Android 对照 iOS

作者: Max.Bai

时间: 2014/10

Appium - Android 对照 iOS

Appium 支持Android也支持iOS。可是两者还有非常大的差别,我使用Appium一个多月,刚開始是Android,后面才用iOS。所以做iOS自己主动化的时候比Android艰难多了,后来才发现这两个的模式有一定的差别。

(当然可能是我Mac的基础太差)就以我在理解浅显的描写叙述下两者的差别。

Appium Android 工作模式(例如以下经验不过我在windows上的经验。mac上只用了ios,如有说错,请大家指正):

 过程大概例如以下:

 1. Android设备已经开启(包含真机和模拟器,真机已经连接上电脑,当然驱动少不了。

。。)

 2. Appium 打开(命令行打开的同一时候须要设置IP和port,Appium server也同一时候开启了)

 3. 点击launch。Appium启动时连接Android设备,除了设置IP和port,这里不做不论什么设置(什么app,浏览器。API版本号。。。)就能够成功开启Appium

 Appium Server启动直接连接设备。

自己主动化用例运行时连接上Appium server,才告诉Appium我要測什么app。

。。

之类的caps

 

 Appium iOS 工作模式:

 iOS 和 Android不同,模拟器和真机有差别,我分开说

 iOS模拟器步骤例如以下:

 1. 打开Appium (命令行直接运行同一时候须要设置IP和portAppium就算是启动了。GUI的可能还须要点击launch)

 2. 点击launch,启动Appium server 除了设置IP和port。别的也不须要设置(命令行打开的时候就带了IP和port的參数)

 Appium Server开启时不连接不论什么模拟器,运行用例是才依照caps 开启相应的模拟器和安装app

 

 iOS真机:

 1. 真机连接上电脑

 2. Appium打开 (命令行直接运行Appium就算是启动了。真机须要-u 參数设置真机UUID,GUI的可能还须要点击launch)

 3. 点击launch。启动Appium server 除了设置IP和port(命令行打开的时候就带了IP和port的參数),须要设置真机的UUID(当然还有其它关联caps也须要设置)。Appium启动时须要连接真机

 

 

 

 那么问题来了(别想歪了。不是blue shit。。



 开启Appium server的时候什么设置都不要,那GUI里面的那么多设置都是干什么用的?(什么app,浏览器,API版本号。。。)

 答案就是Inspector用的,Inspector 就和你运行用例一样的。须要告诉server你的caps都是什么。

 Android SDK有工具能够用来识别UI的,UIAutomationView,在SDK的文件夹下, 所以Appium Android inspector的能够不要。

 iOS SDK不知道是否有类似的工具,所以我还是用Appium的Inspector来抓对象。

以上都是个人经验,如有错误,望大家一起探讨。

Appium - Android 对照 iOS的更多相关文章

  1. Android与IOS异同点对照(1)------ 显示

    Android与IOS作为当前世界上最流行的两大移动端操作系统,都拥有无数的粉丝. 那么对于Android或者IOS的开发人员来说,这两个系统都拥有什么同样或者不同的地方那?如今让我们一起来了解一下A ...

  2. JS调用Android、Ios原生控件

    在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...

  3. 现在创业做App,先做 Android 还是 iOS?

    随着互联网+的高速发展,现在创业大部分都是在布局移动端,初期往往摆在面前最大的难题是,如何分配有限的成本,在最快的速度内占领市场?这个大难题会影响创始人在团队和产品建设方方面面的决定.缩小至移动App ...

  4. 判断手机端用户打开页面时是android还是ios,并将判断结果通过ajax返回给url接口,传递回去

    首先判断页面是android还是ios,然后利用ajax将结果通过接口url返回回去,记录到log日志中,以统计android和ios用户访问该页面的数量(数据统计) <script type= ...

  5. Xamarin For Visual Studio 3.0.54.0 完整离线破解版(C# 开发Android、IOS工具 吾乐吧软件站分享)

    Xamarin For Visual Studio就是原本的Xamarin For Android 以及 Xamarin For iOS,最新版的已经把两个独立的插件合并为一个exe安装包了.为了区分 ...

  6. Unity在Android和iOS中如何调用Native API

    本文主要是对unity中如何在Android和iOS中调用Native API进行介绍. 首先unity支持在C#中调用C++ dll,这样可以在Android和iOS中提供C++接口在unity中调 ...

  7. Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发Android、IOS工具)

      Xamarin是由Miguel de Icaza成立的一家新的独立公司,目的是给Mono一个继续奋斗的机会.Mono for Android (原名:MonoDroid)可以让开发人员使用 Mic ...

  8. 安卓自动化测试:Android studio 自带的 Record Espresso Test || [ Appium & (Android studio || Python|| Eclipse ) ]

    1.Android studio 自带的 Record Espresso Test  https://developer.android.com/studio/test/espresso-test-r ...

  9. .NET/android/java/iOS AES通用加密解密(修正安卓)

    移动端越来越火了,我们在开发过程中,总会碰到要和移动端打交道的场景,比如.NET和android或者iOS的打交道.为了让数据交互更安全,我们需要对数据进行加密传输.今天研究了一下,把几种语言的加密都 ...

随机推荐

  1. Sublime 插件Pylinter could not automatically determined the path to lint.py

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50618630 安装Sublime Te ...

  2. iipccsxxtnsoiq

    gxspvyheuetwqgnbwmwd

  3. [CSS3] The different of Background-size between 'cover' and 'contain'

    'cover': The smaller axies of image (x axies) should match smaller axies (x axies) of container. So ...

  4. poj 2612 Mine Sweeper

    Mine Sweeper Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6429   Accepted: 2500 Desc ...

  5. (转)<![CDATA[]]>和转义字符

    被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”. 此标记用于xml文档中,我们先来看看使用转义符的情 ...

  6. LeetCode OJ 215. Kth Largest Element in an Array 堆排序求解

    题目链接:https://leetcode.com/problems/kth-largest-element-in-an-array/ 215. Kth Largest Element in an A ...

  7. iOS UI08_UITableView

    (http://img.blog.csdn.net/20150808103801391) // // MainViewController.m // UI08_UITableView // // Cr ...

  8. sql server执行动态拼接sql(带传参数)和去掉小数点后0的函数

    1 exec sp_executesql N'SELECT 2 [Extent2].[Id] AS [Id], 3 [Extent2].[Name] AS [Name], 4 [Extent2].[D ...

  9. doT.js变量和数组混合读取方式

    可以包裹任意大小的html 变量在其包裹的任意区域都有效 单个变量可以和数组分开展示 最好放置在最下方执行js 数据结构 var data = { "id": "1280 ...

  10. JavaScript学习——使用JS完成注册页面表单校验

    1.步骤分析 第一步:确定事件(onsubmit)并为其绑定一个函数 第二步:书写这个函数(获取用户输入的数据<获取数据时需要在指定位置定义一个 id>) 第三步:对用户输入的数据进行判断 ...