在上篇文章中,我们搭建好了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. MVC 用扩展方法执行自定义视图,替代 UIHint

    MVC 用扩展方法执行自定义视图,替代 UIHint 项目中用了 Bootstrap , 这样就不用写太多的CSS了,省去很多事情.但是这个业务系统需要输入的地方很多,每个表都有100多个字段,每个页 ...

  2. 通过js实现在页面中添加音乐

    代码如下!兼容IE // JavaScript Document function autoPlay(){//自动播放 var myAuto = document.getElementById('my ...

  3. Unity 3.5

    ASP.NET Web Forms 的 DI 應用範例 跟 ASP.NET MVC 与 Web API 比起来,在 Web Forms 应用程式中使用 Dependency Injection 要来的 ...

  4. 解决C# WinForm 中 VSHOST.EXE 程序不关闭的问题

    右击“解决方案”--属性-调试栏-启用调试器部分-“启用Visual studio宿主进程”不勾选

  5. 存储过程的参数问题与C#中的调用

    1. 带参数的存储过程 set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[sp_select_gua] @num ...

  6. Hadoop 使用FileSystem API 读取数据

    代码: package com.hadoop; import java.io.IOException; import java.io.InputStream; import java.net.URI; ...

  7. sublime text 3 插件:package control

    sublime text 3安装package control import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf ...

  8. Xml转化为DataTable

    /// <summary> /// XML转换为DataTable /// </summary> /// <param name="fileName" ...

  9. Setting up Ubuntu in CoLinux–changing local/keyboard to be English

    Today i installed the CoLinux with Ubuntu package, but the default locale setting of the system is G ...

  10. js的onclick和jquery的bind事件执行先后顺序

    近期在项目中为每一个ajax触发按钮写正在加载的效果,用的是bootstarp 代码如下 $(function(){ $('.btn').bind('click',function(e){ var $ ...