上一篇中已经讲了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. [原]网络库libevent在Visual Studio中的使用方法

    libevent是一个事件触发的网络库,适用于windows.linux.bsd等多种平台,内部使用select.epoll.kqueue等系统调用管理事件机制.著名分布式缓存软件memcached也 ...

  2. HackerRank "Kundu and Tree" !!

    Learnt from here: http://www.cnblogs.com/lautsie/p/3798165.html Idea is: we union all pure black edg ...

  3. linux下查看进程运行的时间

    原文链接:http://www.centoscn.com/CentOS/2014/0403/2724.html 可通过ps 来查看,通过参数 -o 来查看 例: ps -eo pid,tty,user ...

  4. TX Textcontrol 使用总结五——添加图片

    实现如图所示效果: 实现代码如下所示: 注意,此处不做代码格式化处理... using System;using System.Collections.Generic;using System.Dra ...

  5. Linux启动过程详解(转)

    启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘 ...

  6. c++常用的一些库函数、常量和头文件

    1.常用数学函数 头文件 #include <math> 或者 #include <math.h>   函数原型 功能 返回值 int abs(int x) 求整数x的绝对值 ...

  7. 黄聪:wordpress自动选择上一篇文章选择的分类目录

    有时候,我们需要连续发布同一个分类下的文章,每篇文章都要重新选择分类非常麻烦.下面,我们就用程序来搞定这个问题. add_action('publish_post', 'save_fl' ); add ...

  8. OAF_VO系列3 - Binding Style绑定方式

    在OAF VO开发中,Binding Style主要用于对VO的where clause做动态传值,总共有三种方式 1.       Oracle Named 2.       Oracle Posi ...

  9. API 双方认证探讨

    开放 api 已是大势所趋.而 api 这种东西有个特点就是覆水难收.一旦公开出去了,被大量用户使用,一旦修改,就会让广大用户都掉坑里.所以,api 在设计之初就要尽量考虑周全,并预留扩展可能. 目前 ...

  10. linux命令(12)uniq去重

    转载地址:http://blog.51yip.com/shell/1022.html 实例详细说明linux下去除重复行命令uniq 一,uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以 ...