appium 执行demo
appium很早就了解了,一直没有之际操作过,最近把官网的demo搞下来执行了一遍,还是很有意思的
经过测试是可以跑起来的,不过跑得过程中,输入法需要默认为英文的,如果是中文的码输入的时候有点问题,可以自行体验
import os
from selenium import webdriver # Returns abs path relative to this file and not cwd
PATH = lambda p: os.path.abspath(
os.path.join(os.path.dirname(__file__), p)
)
"""
desired_caps = {}
desired_caps['automationName'] = 'Appium'
desired_caps['platformName'] = 'Android'
desired_caps['deviceName'] = 'sunx'
desired_caps['version'] = '4.4.2'
desired_caps['app'] =PATH('D:\\ContactManager.apk')
desired_caps['appPackage'] = 'com.example.android.contactmanager'
desired_caps['appActivity'] = '.ContactManager'
desired_caps['unicodeKeyboard'] = True
desired_caps['resetKeyboard'] = True driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) el = driver.find_element_by_name("Add Contact")
el.click() textfield = driver.find_element_by_id("com.example.android.contactmanager:id/contactNameEditText").send_keys("testest")
textfield = driver.find_element_by_id("com.example.android.contactmanager:id/contactPhoneEditText").send_keys("188888888") driver.find_element_by_name("Save").click() driver.quit()
首先是环境配置,网上搜下
然后是启动
输入appium,启动appium服务
然后执行上面的脚本,脚本要注意app的位置,以及初始化中的个参数需要与本机对应
ps:apppackage和activity,怎样获取呢?android有现成的工具,就是他!aapt
adt-bundle-windows-x86-20140321\sdk\build-tools\android-4.4.2这个目录下的aapt.exe
写个例子:
aapt dump badging D:\yourapp.apk,然后查找,我把参数用删除线标记了,填上去就ok了
package: name='com.ma.huoying' versionCode='' versionName='1.0'
sdkVersion:''
application-label:'鐏奖蹇嶈€?
application-icon-160:'res/drawable-hdpi/browser.png'
application-icon-240:'res/drawable-hdpi/browser.png'
application-icon-320:'res/drawable-hdpi/browser.png'
application-icon-480:'res/drawable-hdpi/browser.png'
application: label='鐏奖蹇嶈€? icon='res/drawable-hdpi/browser.png'
application-debuggable
launchable-activity: name='com.ma.huoying.MainActivity' label='鐏奖蹇嶈€?
icon=''
uses-permission:'android.permission.INTERNET'
元素定位:
appium的元素定位,一般就可以使用adt-bundle-windows-x86-20140321\sdk\tools\uiautomatorviewer.bat
这个工具来查看层级关系,通过xpath定位或者id神马的,具体看app情况吧
appium 执行demo的更多相关文章
- appium跑demo简单实例讲解
安装appium,设置 demo.pyfrom appium import webdriver #要装webdriver,方法查看http://www.cnblogs.com/sincoolvip/p ...
- wav2midi 音乐旋律提取算法 附可执行demo
前面提及过,音频指纹算法的思路. 也梳理开源了两个比较经典的算法. https://github.com/cpuimage/shazam https://github.com/cpuimage/Aud ...
- 第一个appium的Demo
原文来自:一颗糖果 http://www.cnblogs.com/linglingyuese/articles/8418311.html 一.环境搭建 略(后期补) 二.创建一个测试apk包的项目 ...
- appium 计算器demo
需要修改的是 platformVersion deviceName demo: #coding=utf- from appium import webdriver import time desire ...
- appium ios Demo
Appium Demo 录制图片,环境搭建完毕后根据视频基本能利用模拟器完成简单测试用例 感谢大神http://www.cnblogs.com/tobecrazy/p/4970188.html
- Quartz定时调度jar包的执行Demo分享
1.Quartz简介 Quartz框架的核心是调度器.调度器负责管理Quartz应用运行时环境.调度器不是靠自己做所有的工作,而是依赖框架内一些非常重要的部件.Quartz不仅仅是线程和线程管理. ...
- appium执行iOS测试脚本并发问题
appium1.4.X+iOS9.X+xcode7.X: appium1.4.x+iOS9.x+xcode7.x,这一整套的配置做移动端自动化测试是测试人员常用的测试框架.关于,这一套测试框架的并发问 ...
- appium python demo
#coding=utf-8from appium import webdriverdesired_caps={}desired_caps["platformName"]=" ...
- java多线程并发执行demo,主线程阻塞
其中有四个知识点我单独罗列了出来,属于多线程编程中需要知道的知识: 知识点1:X,T为泛型,为什么要用泛型,泛型和Object的区别请看:https://www.cnblogs.com/xiaoxio ...
随机推荐
- ssh 密码登陆
概要: 首先 自己生成秘钥 其次 用已经生成的秘钥 实现 用秘钥登陆的功能(在别的机器上部署的道理相同) 辅助: 登陆工具 Tera Term linux版本:cen ...
- NPOI 导出Excel2007版本时出现流已关闭问题
NPOI生产.xlsx文件件时,在使用book.Write(ms);后,会关闭流,这样导致再次使用Respons输出流的时候就出错了. 我看到一些网友提供的解决办法是: public class NP ...
- Redis 3.0.0 集群部署
简述: 1.0.1:redis cluster的现状 目前redis支持的cluster特性 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot reshardi ...
- C#机器视觉入门系列1-转化为灰度图&&3*3模糊
这是我入门机器视觉的系列学习经验之开篇,本来想着依靠opencv快速实现一些功能,但是想了一下既然是学数学的,还是应该自己多算算,写一些自己理解的东西才好. 入门篇很简单,就只是实现了转化成灰度图以及 ...
- Android开发-动态布局小记
android动态布局相比静态布局,动态布局不用再将xml转变了布局代码,提高了一定的效率,当然可以忽略不记.动态布局主要是比较灵活,可以很快的在代码中直接修改布局,并直接使用控件进行业务逻辑开发.但 ...
- 使windows隐藏文件全部显示出来
win+R => cmd=>attrib -s -b *.* /S /D 找出所有隐藏文件夹—— FindHidden
- SYS与SYSTEM、DBA与SYSDBA的区别
SYS与SYSTEM: 1. sys 的角色是sysdba system 的角色是sysoper 2. sys 具有create database的权限 system没有该权限 3. sys可以建数据 ...
- 更改mysql中当前auto_increment的值的方法
最近给自己网站更改mysql中当前auto_increment的值 如果在mysql中一个表test中的ID字段设为auto_increment插入两条记录后ID=2,这时删除1条记录,再插入一条变成 ...
- STM32——assert_param(expr)
在STM32的固件库和提供的例程中,到处都可以见到assert_param()的使用.如果打开任何一个例程中的stm32f10x_conf.h文件,就可以看到实际上assert_param是一个宏定义 ...
- 通过FEDERATED存储引擎跨实例访问数据
通过FEDERATED存储引擎同步两实例间的表数据需求情景:实例1中A库中的三个视图是实例2中的B库所依赖的,B需要A库中三个视图的实时数据.方案:通过FEDERATED来完成跨势力的查询FEDERA ...