appium+python+eclipse简单编写小示例!
Appium简单介绍!
一、appium分成3个部分来看,分别为:appium服务端、appium客户端、设备端
1、设备端
WebDriverAgentRunner 的应用,以后简称 WDA,这个应用的作用就是对你的目标 App 进行测试。
setUp方法中主要做一些测试前的准备,tearDown方法是测试结束后的清理工作,所有的测试函数都必须以 test
开头,如下文提到的test_appium_01
2、appium服务端
appium服务端是一个node.js应用,这个应用跑在电脑上,用语和WDA进行通信,涉及到相关的测试操作,因此appium和WDA约定了一套通信协议,采用的是WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架
3、appium客户端
appium指的是我们写的测试代码,Appium 支持多种测试语言的根本原因在于,WebDriver 协议为各种主流语言提供了一个第三方库,能够方便的把测试脚本转化成符合 WebDriver 规范的 URL
二、appium的运行原理
提供各个语言的第三方库,将测试脚本转化成 WebDriver 协议下的 URL,通过 Node 服务发送到各个平台上的代理工具,代理工具在运行过程中不断接收 URL,根据 WebDriver 协议解析出要执行的操作,然后调用各个平台上的原生测试框架完成测试,再将测试结果返回给 Node 服务器。
运行代码之前的注意点:
1、相关的环境配置已经ok(eclipse中安装pydev)
2、打开appium.exe,进行如下操作
3、webdriver.Remote中的链接填写内容,查找方式如下:
贴出代码如下:
代码的内容介绍:只是进行简单的“打开短信应用,并且退出”,主要是为了验证appium的环境是否都ok
# coding=UTF-
'''
Created on //
@author: SYW
''' from Test.logs.logs import logging #自己封装的log打印方法
from appium import webdriver
import unittest
from time import sleep class Test_appium(unittest.TestCase): def setUp(self):
logging.info("Test_appium.....setUp") #提示信息,无log信息的,可将此删除
desired_cups = {}
desired_cups['platformName'] = 'Android'
desired_cups['platformVersion'] = '4.4.2'
desired_cups['deviceName'] = '0123456789ABCDEF' #手机的串号,手机usb连接电脑,使用adb devices即可查看此串号,复制粘贴此处即可
desired_cups['appPackage']= 'com.android.mms' #打开应用的包名
desired_cups['appActivity'] = 'com.android.mms.ui.ConversationList' #应用的活动名称
self.device = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_cups) #appium的服务,查看地方:打开已经安装的appium,点击“设置”查看端口
sleep() def tearDown(self):
unittest.TestCase.tearDown(self)
self.device.quit() #退出App def test_appium_01(self):
'''打开短信app'''
self.device.start_activity('com.android.mms', 'com.android.mms.ui.ConversationList')
print '' #随便打印的提示信息 if __name__ == '__main__':
unittest.main()
appium+python+eclipse简单编写小示例!的更多相关文章
- python -----一个简单的小程序(监控电脑内存,cpu,硬盘)
一个简单的小程序 用函数实现!~~ 实现: cpu 使用率大于百分之50 时 , C 盘容量不足5 G 时, 内存 低于2G 时. 出现以上其中一种情况,发送自动报警邮件! 主要运用 到了两个 模 ...
- appium+python+unittest+HTMLRunner编写UI自动化测试集
简介 获取AppPackage和AppActivity 定位UI控件的工具 脚本结构 PageObject分层管理 HTMLTestRunner生成测试报告 启动appium server服务 以py ...
- selenium,phantomJS,python整合的一个小示例,把某个网页画面整体保存成图片格式。
本篇将使用selenium,phantomJS和python制作的一个示例,把某个网页整体保存为一个图片文件. 简单介绍下,selenium是一个开源的用于测试web程序的工具,当然,如果你要执行一些 ...
- appium基础之简单的小例子
appium环境搭建了,当然也要开始用起来了,记录一下学习的过程 遇到问题 1.The permission to start '.ui.home.view.HomeActivity' activit ...
- appium +python 一个简单的例子
appium 安装和python 安装好后. 1. 启动android模拟器--Genymotion-点击Start 2. 启动appium 3. 运行代码. # -*- ...
- appium+python+eclipse 自动化测试框架构建!
经过几天的慢慢研究,现将所需用的自动化框架进行了构建,在后期的代码编写中,直接在框架中套用编写对应的module.case等即可,以此来简化测试方式,提高代码的编写效率与规范 基本的架构设计流程图,如 ...
- appium+python自动化56-微信小程序自动化(摩拜为例)
前言 最近微信的小程序越来越多了,随之带来的问题是:小程序如何做自动化测试? 本篇以摩拜小程序为例,介绍如何定位小程序里面的元素 运行环境: android 7.0 appium v1.7.1 web ...
- 利用Python制作简单的小程序:IP查看器
前言 说实话,查看电脑的IP,也挺无聊的,但是够简单,所以就从这里开始吧.IP地址在操作系统里就可以直接查看.但是除了IP地址,我们也想通过IP获取地理地址和网络运营商情况.IP地址和地理地址并没有固 ...
- python学习之----异常处理小示例
网络是十分复杂的.网页数据格式不友好,网站服务器宕机,目标数据的标签找不到,都 是很麻烦的事情.网络数据采集最痛苦的遭遇之一,就是爬虫运行的时候你洗洗睡了,梦 想着明天一早数据就都会采集好放在数据库里 ...
随机推荐
- OSGi简介
OSGi简介 OSGi是什么 下面来看看“维基百科”给出的解释: OSGi(Open Service Gateway Initiative)有双重含义.一方面它指OSGi Alliance组织:另一方 ...
- Python的基本数据数字、字符串、布尔值及其魔法
基本数据类型介绍 若要把Pyhton的基本数据类型:数字(int).字符串(str).布尔(bool).列表(list).元组(tuple).字典(dict)都分为一个个不同的角色 如:战士,魔法师, ...
- Day4_装饰器
装饰器: #模板def auth(func): def wrapper(*args,**kwargs): res=func(*args,**kwargs) return res return wrap ...
- Mybatis 系列1
第一篇教程, 就先简单地写个demo, 一起来认识一下mybatis吧. 为了方便,我使用了maven, 至于maven怎么使用, 我就不做介绍了.没用过maven的, 也不影响阅读. 一.Mybat ...
- What’s new in Channels 2 摘译
最近准备在一个老Django项目上启用Channels,Channels于今年2月2日发布2.0版本,这个版本包含很多不向前兼容的特性,为了新特性调研的需要,也为了方便社区,我新版本的What's N ...
- 微信小程序-框架详解(1)
配置 -app.json文件对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.tab等 { "pages": [ //决定页面文件的路径 "pag ...
- CSS——LESS【转】
原文链接:http://www.w3cplus.com/css/less 去年就初次接触了LESS,并用他制作了一个Less.org的首页页面,但由于CSS的固有模式,没有让自己喜欢上他.由于前段时间 ...
- HiJson(Json格式化工具)64位中文版下载 v2.1.2
链接:https://pan.baidu.com/s/15gMvig15iUjpqSX7nUZ-5Q 密码:8086
- zabbix 3.4 ubuntu 16 用腾讯企业邮箱作为告警邮箱
最近一直在研究zabbix监控系统,今天调试了腾讯企业邮箱作为告警邮箱的设置,本次方式是用内置email组件. 第一步: 选择Administration-->Media Types--> ...
- DX11 Without DirectX SDK--使用Windows SDK来进行开发
在看龙书(Introduction to 3D Game Programming with Directx 11)的时候,里面所使用的开发工具包为Microsoft DirectX SDK(June ...