在上篇文章中,我们搭建好了appium+robotframework的环境,这篇文章中主要是一个简单实例。

一、测试用例编写前提

1.模拟器(或手机)连接电脑

adb devices                     查看设备是否已经连接电脑

adb connect 设备型号        把测试设备与电脑连接(夜神模拟器对应的设备型号:127.0.0.1:62001)

2.启动appium server

cmd窗口中,输入appium,即可启动

二、测试用例编写步骤

1.创建测试项目

File-New Project,选择类型Directory type

2.创建测试套件

测试项目-New Suite,输入Name,选择类型File type

3.创建测试用例

测试套件-New Test Case,输入Name

4.导入测试库AppiumLibrary

测试套件Edit标签页-Library,输入Name:AppiumLibrary

注:导入的库显示为红色时,表示导入的库不存在;如果是黑色,则表示导入成功

5.编写测试用例

测试用例Edit标签页,输入Keywords

注:关键字显示蓝色,说明它是一个合法的关键字,后面为红色说明需要输入一个参数

三、实例

Open Application,启动指定app

要想打开模拟器或手机上的指定app,则需要使用open application方法,这里,对这个方法进行简单的介绍:

1.http://localhost:4723/wd/hub:

Appium所在的url路径(这里appium搭建在本机,所以url格式固定不变)

2.platformName:

被测的平台名称,Android或ios

3.platformVersion:

平台版本,如Android的版本号

4.deviceName:

设备名称,即运行得模拟器或真机的设备型号

5.app:

被测应用的存储路径

6.appPackage:

app的包名

7.appActivity:

app的activity名

注:关于app的包名及activity名的获取方法,在本博客的Monkeyrunner的学习中,有介绍过;请参考Monkeyrunner中的方法。

8、实参获取方法

1)deviceName获取

通过在cmd命令行中,输入adb devices指令获取

2)app

与appPackage和appActivity,可以二选一;即选择填写appPackage和appActivity参数时,可省略app参数,不填写;不填写app时,默认被测设备中,已经有该app的存在;填写app该参数时,系统会重新安装指定app

3)appPackage

方法一:通过uiautomatorviewer获取

方法二:aapt dump badging [apk在电脑本地存储路径],apk路径中一定不能有空格(具体参考:http://www.cnblogs.com/lynn-li/p/5885001.html中的“如何获取一个app的package名和activity”)

4)appActivity

方法一:aapt dump badging [apk在电脑本地存储路径],apk路径中一定不能有空格(具体参考:http://www.cnblogs.com/lynn-li/p/5885001.html中的“如何获取一个app的package名和activity”)

方法二:打开首页activity name,获取命令adb logcat ActivityManager:I*:s

到此,我们已经可以成功打开指定设备上的特定app。

下一章节,主要分享安卓自动化AppiumLibrary中常用的关键字。

appium+robotframework的简单实例的更多相关文章

  1. Appium + junit 的简单实例

    import static junit.framework.Assert.assertTrue; import static org.junit.Assert.*; import org.junit. ...

  2. appium跑demo简单实例讲解

    安装appium,设置 demo.pyfrom appium import webdriver #要装webdriver,方法查看http://www.cnblogs.com/sincoolvip/p ...

  3. appium+robotframework环境搭建

    appium+robotframework环境搭建步骤(Windows系统的appium自动化测试,只适用于测试安卓机:ios机需要在mac搭建appium环境后测试) 搭建步骤,共分为3部分: 一. ...

  4. Hibernate(二)__简单实例入门

    首先我们进一步理解什么是对象关系映射模型? 它将对数据库中数据的处理转化为对对象的处理.如下图所示: 入门简单实例: hiberante 可以用在 j2se 项目,也可以用在 j2ee (web项目中 ...

  5. 最新 Eclipse IDE下的Spring框架配置及简单实例

    前段时间开始着手学习Spring框架,又是买书又是看视频找教程的,可是鲜有介绍如何配置Spring+Eclipse的方法,现在将我的成功经验分享给大家. 本文的一些源代码来源于码农教程:http:// ...

  6. 修改js confirm alert 提示框文字的简单实例

    修改js confirm alert 提示框文字的简单实例: <!DOCTYPE html> <html> <head lang="en"> & ...

  7. 利用navicat创建存储过程、触发器和使用游标的简单实例

    利用navicat创建存储过程.触发器和使用游标的简单实例 标签: navicat存储过程触发器mysql游标 2013-08-03 21:34 15516人阅读 评论(1) 收藏 举报  分类: 数 ...

  8. 【转】Android Https服务器端和客户端简单实例

    转载地址:http://blog.csdn.net/gf771115/article/details/7827233 AndroidHttps服务器端和客户端简单实例 工具介绍 Eclipse3.7 ...

  9. Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例

    目录 [TOC] 1.环境准备 ​ 本文中的案例会有四台机器,他们的Host和IP地址如下 c1 -> 10.0.0.31 c2 -> 10.0.0.32 c3 -> 10.0.0. ...

随机推荐

  1. c#之冒泡排序的三种实现和性能分析

    冒泡排序算法是我们经常见到的尤其是子一些笔试题中. 下面和大家讨论c#中的冒泡排序,笔者提供了三种解决方案,并且会分析各自的性能优劣. 第一种估计大家都掌握的,使用数据交换来实现,这种就不多说了,园子 ...

  2. html5 音频和视频(audio And video)

    1.音频和视频  Web 上的视频 直到现在,仍然不存在一项旨在网页上显示视频的标准. 今天,大多数视频是通过插件(比如 Flash)来显示的.然而,并非所有浏览器都拥有同样的插件. HTML5 规定 ...

  3. Android项目---LayoutParams

    LinearLayout.LayoutParams extends ViewGroup.MarginLayoutParams java.lang.Object    ↳ android.view.Vi ...

  4. 远程连接mysql速度慢的解决方法

    最近在公司内部连mysql速度非常慢,一直还以为公司的网络有问题,后经查发现出现这种问题的主要原因是mysql默认开启了DNS的反向解析功能,连接时反向解析计算机名称时耗时严重,导致连接超慢.解决方法 ...

  5. jquery表格datagrid单元格显示图片及分页使用

    要想达到自定义显示表格框的目的比如显示图片,超链接,按钮的形式,只需要给列添加formatter属性即可,比如显示图片: columns: [[                             ...

  6. 初识Identity

    初识Identity 摘要 通过本文你将了解ASP.NET身份验证机制,表单认证的基本流程,ASP.NET Membership的一些弊端以及ASP.NET Identity的主要优势. 目录 身份验 ...

  7. Git工作流:中心工作流(翻译)

    使用Git作为版本控制器,有众多可能的工作流(Workflow),这使得我们这些新鸟不知道在实际工作中不知道该选择哪种工作流.这里我们对最常见的Git工作流做一个对比,为企业团队提供一个参考. 正如你 ...

  8. Dynamics CRM 多个Form显示不同的Ribbon按钮

    昨天群里熊宸(Microfoft MVP)给大家分享了以“Dynamics CRM 客户端编程概况”为主题,在群里给大家做了一次精彩的分享. 一些朋友聊到了Ribbon按钮在Form上的显示问题,因为 ...

  9. 3 MySQL SQL基础

    目录 1. SQL概述2. 数据库操作3. 表操作4. 记录操作 1. SQL概述 SQL,结构化查询语言(Structured Query Language),一种数据库查询和程序设计语言,用于存取 ...

  10. Bootstrap3.0入门学习系列

    Bootstrap3.0入门学习系列规划[持续更新]   前言 首先在此多谢博友们在前几篇博文当中给与的支持和鼓励,以及在回复中提出的问题.意见和看法. 在此先声明一下,之前在下小菜所有的随笔文章中, ...