上一篇中已经讲了python+appium的环境搭建。这里简单的讲一下appium的使用。

我也是第一次使用appium,看了教程问了人。知道appium可以通过模拟也可以连接上手机使用。本篇中,先使用模拟器和appium编写一段简单的代码练练手。

下面以安卓原生系统的计算器做个示例。笔者使用的是Python3.5.2,appium1.4.16.1

首先我们打开eclipse和模拟器

然后我们打开appium

打开了appium之后记得点击一下右边那个类似播放的按钮启动appium。

好了,我们可以开始编码了

from appium import webdriver

desired_caps = {
'platformName':'Android',
'platformVersion':'4.4.2',
'deviceName':'test',
'appPackage':'com.android.calculator2',
'appActivity':'.Calculator'
}
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
driver.find_element_by_name("Phone").click()
driver.find_element_by_name("1").click()
driver.find_element_by_name("3").click()
driver.find_element_by_name("×").click()
driver.find_element_by_name("1").click()
driver.find_element_by_name("5").click()
driver.find_element_by_name("9").click()
driver.find_element_by_name("delete").click()
driver.find_element_by_name("=").click()
driver.quit()
运行这个之后,就会依次的执行打开计算器,依次点击1、3、×、1、5、9、delete、=按键并且在计算器输出结果之后进行关闭。
这里要说明一下,webdriver.Remote实际上就是原生webdriver的子类,另外Remote()构造函数的第一个参数中需要显示指定appium server监听的端口
看起来是不是很熟悉?和selenium是不是很像。
中间有一句是定位计算器中的乘号,这个做起来的时候我有点懵逼。是借助了uiautomatorviewer这个工具才找到了乘号的name属性。因为不是特别熟所以这里不介绍这个东西。过几天笔者研究研究再来给大家分享这个工具的使用。
能力有限,先分享这么多东西吧,希望能够一起进步。

初探appium之appium的使用的更多相关文章

  1. appium --log-timestamp > appium.log

     appium --log-timestamp > appium.log 

  2. 【Appium】Appium工作原理

    参考:http://www.cnblogs.com/zhjsll/p/5698878.html 原作者写的很好,所以直接放在这里. 一.什么是Appium Appium是一个开源.跨平台的测试框架,可 ...

  3. appium(5)-Appium capabilities

    Appium Capabilities Appium server capabilities Capability Description Values automationName Which au ...

  4. Appium与Appium Desktop的区别

    Appium-Server的配置,在之前的博文已有介绍,基于Python的Appium环境搭建合集,所以在此处就不详细介绍了.今天主要来分享下Appium-Server和Appium desktop在 ...

  5. [Appium] 使用Appium过程中遇到的各种坑

    以下问题都是以ios为背景: 1. 问题: Case: 在页面S1上,点击元素A后,判读B元素是否出现. Detail:一开始通过Appium Inspector, 可以找到B元素,所以直接取该元素的 ...

  6. 【Appium】Appium工作原理(2)

    Appium原理 面试的时候,被问到appium原理,一点不会,实在尴尬. 大家可以直接翻看原作https://blog.csdn.net/jffhy2017/article/details/6922 ...

  7. Appium学习——Appium工作原理

    appium的工具原理 Appium-client>>>>Appium-server>>>>移动设备 ========================= ...

  8. appium===Python+Appium环境部署教程

    *前提是你已经安装好python,以及python的pip工具 *安装python请自行百度教程~ 1.安装安卓sdk 安装包:http://tools.android-studio.org/inde ...

  9. Appium禁止appium setting和unlock在设备上重复安装

    1.文件:/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/appium-android-dri ...

随机推荐

  1. 剑指offer系列27--表示数值的字符串

    [题目]请实现一个函数用来判断字符串是否表示数值(包括整数和小数). 例如,字符串”+100”,”5e2”,”-123”,”3.1416”和”-1E-16”都表示数值. 但是”12e”,”1a3.14 ...

  2. leptus和cowboy之间某些库的转换

    在github上问作者,如何使用cookie,作者回复是,leptus是基于restful的框架,对于cookie和session的支持,建议转换为cowboy用,以下是转换方式 leptus_req ...

  3. 黄聪:C#操作xml SelectNodes,SelectSingleNode通过 xPath 定位class包含Contains的DIV

    一. SelectNodes,SelectSingleNode总是返回NULL 下面以一个简单的xml为例: <?xml version="1.0"?> <mes ...

  4. UDP程序设计

        UDP是不可靠的连接,广泛应用于各种聊天工具     使用UDP发送的信息,对方不一定会接收到.所有的信息使用数据报的形式发送出去,这就要求客户端要始终等待服务器发送的信息才能进行接收.在Ja ...

  5. BIP_开发案例03_将原有Report Builer报表全部转为XML Publisher形式(案例)

    2014-05-31 Created By BaoXinjian

  6. PLSQL_Oracle Lock锁的处理(案例)

    2014-06-21 Created By BaoXinjian

  7. Python 结巴分词(1)分词

    利用结巴分词来进行词频的统计,并输出到文件中. 结巴分词github地址:结巴分词 结巴分词的特点: 支持三种分词模式: 精确模式,试图将句子最精确地切开,适合文本分析: 全模式,把句子中所有的可以成 ...

  8. centos nginx环境下删除CI框架Index.php入口遇到404问题

    今天在网上百度看了很多文章,想要去掉index.php入口文件有好多方法,自己也照着在网站到根目录下新建了一个.htaccess文件,内容如下: RewriteEngine On RewriteCon ...

  9. 第一个APP:IOS做简单运算的计算器

    步骤: 1.打开Xcode,单机Creat a new Xcode project 2.左边选择ios下Application,右边选择single view Application 3.填写项目名称 ...

  10. ruby字符串学习笔记4

    1 单独处理字符串的字符 如果处理的是ASCII码的文档使用string#each_byte 注意 没有 string#each方法,String#each_byte 速度比 String#scan快 ...