Appium简单介绍!

  一、appium分成3个部分来看,分别为:appium服务端、appium客户端、设备端

  1、设备端

    WebDriverAgentRunner 的应用,以后简称 WDA,这个应用的作用就是对你的目标 App 进行测试。

    setUp方法中主要做一些测试前的准备,tearDown方法是测试结束后的清理工作,所有的测试函数都必须以 test 开头,如下文提到的test_appium_01

  2、appium服务端

    appium服务端是一个node.js应用,这个应用跑在电脑上,用语和WDA进行通信,涉及到相关的测试操作,因此appium和WDA约定了一套通信协议,采用的是WebDriverjson 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简单编写小示例!的更多相关文章

  1. python -----一个简单的小程序(监控电脑内存,cpu,硬盘)

    一个简单的小程序 用函数实现!~~ 实现: cpu 使用率大于百分之50 时  ,  C 盘容量不足5 G 时, 内存 低于2G 时. 出现以上其中一种情况,发送自动报警邮件! 主要运用 到了两个 模 ...

  2. appium+python+unittest+HTMLRunner编写UI自动化测试集

    简介 获取AppPackage和AppActivity 定位UI控件的工具 脚本结构 PageObject分层管理 HTMLTestRunner生成测试报告 启动appium server服务 以py ...

  3. selenium,phantomJS,python整合的一个小示例,把某个网页画面整体保存成图片格式。

    本篇将使用selenium,phantomJS和python制作的一个示例,把某个网页整体保存为一个图片文件. 简单介绍下,selenium是一个开源的用于测试web程序的工具,当然,如果你要执行一些 ...

  4. appium基础之简单的小例子

    appium环境搭建了,当然也要开始用起来了,记录一下学习的过程 遇到问题 1.The permission to start '.ui.home.view.HomeActivity' activit ...

  5. appium +python 一个简单的例子

    appium 安装和python 安装好后. 1.      启动android模拟器--Genymotion-点击Start 2.      启动appium 3.     运行代码. # -*- ...

  6. appium+python+eclipse 自动化测试框架构建!

    经过几天的慢慢研究,现将所需用的自动化框架进行了构建,在后期的代码编写中,直接在框架中套用编写对应的module.case等即可,以此来简化测试方式,提高代码的编写效率与规范 基本的架构设计流程图,如 ...

  7. appium+python自动化56-微信小程序自动化(摩拜为例)

    前言 最近微信的小程序越来越多了,随之带来的问题是:小程序如何做自动化测试? 本篇以摩拜小程序为例,介绍如何定位小程序里面的元素 运行环境: android 7.0 appium v1.7.1 web ...

  8. 利用Python制作简单的小程序:IP查看器

    前言 说实话,查看电脑的IP,也挺无聊的,但是够简单,所以就从这里开始吧.IP地址在操作系统里就可以直接查看.但是除了IP地址,我们也想通过IP获取地理地址和网络运营商情况.IP地址和地理地址并没有固 ...

  9. python学习之----异常处理小示例

    网络是十分复杂的.网页数据格式不友好,网站服务器宕机,目标数据的标签找不到,都 是很麻烦的事情.网络数据采集最痛苦的遭遇之一,就是爬虫运行的时候你洗洗睡了,梦 想着明天一早数据就都会采集好放在数据库里 ...

随机推荐

  1. js 读取xml文件

    读取xml文件 [原创 2007-6-20 17:35:37]     字号:大 中 小 js中读取xml文件,简单的例子: <html><head><script> ...

  2. Qt与FFmpeg联合开发指南(三)——编码(1):代码流程演示

    前两讲演示了基本的解码流程和简单功能封装,今天我们开始学习编码.编码就是封装音视频流的过程,在整个编码教程中,我会首先在一个函数中演示完成的编码流程,再解释其中存在的问题.下一讲我们会将编码功能进行封 ...

  3. [转]用python 10min手写一个简易的实时内存监控系统

    简易的内存监控系统 本文需要有一定的python和前端基础,如果没基础的,请关注我后续的基础教程系列博客 文章github源地址,还可以看到具体的代码,喜欢请在原链接右上角加个star 腾讯视频链接 ...

  4. window.open open new window?

    when ever i use window.location.href=//some url it always open a new window, this only happens when ...

  5. Ocelot中文文档-跟踪

    Ocelot使用一个杰出的项目Butterfly 提供了跟踪功能. 为了使用跟踪,请阅读Butterfly的文档. 在Ocelot中如果你想跟踪一个ReRoute,你需要做如下事情: 在Configu ...

  6. go语言时间比较

    local, _ := time.LoadLocation("Local") starttime, _ := time.ParseInLocation("2006-01- ...

  7. Nginx日志自动按日期存储

    Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,因它的稳定性.丰富的功能集.示例配置文件和 ...

  8. OCR智能识别身份信息

    本人研究了两款OCR智能识别的API,下面做详解! 第一款是百度云的OCR识别,填写配置信息,每天有五百次免费的识别次数,适合中小型客户流量可以使用.API文档:http://ai.baidu.com ...

  9. 使用webpack打包vue工程

    记得去年十月份的时候,自己在研究webpack,当时只是知道大致的用法,写了一个简单的demo,现在,经过了7个月对公司产品架构的使用,以及对vue-cli的使用,在了解了实际应用中各种需求之后,我自 ...

  10. AUTOSAR的前期开源实现Arctic Core

    AUTOSAR (AUTomotive Open System ARchitecture) is a worldwide development partnership of vehicle manu ...