Android 测试工具集01
Appium是一个支持原生,混合和移动web apps的开源的跨平台测试框架工具。
ANDROID依赖
- Android SDK API >= 17 (Additional features require 18)
- Appium支持OS X上的Android, Linux和Windows上的beta支持.确保你通过如下的指示来配置你需要运行测试的不同系统的环境
- linux
- osx
- windows
开始安装
安装nodejs 0.8版本及以上, 通过官方的安装程序来安装。
安装android的sdk包,(http://developer.android.com/sdk/index.html), 运行依赖sdk中的'android'工具。并确保你安装了Level17或以上的版本api。设置
ANDROID_HOME系统变量为你的Android SDK路径,并把tools platform-tools两个目录加入到系统的Path路径里。因为这里面包含有一些执行命令安装java的JDK,并设置
JAVA_HOME变量为你的JDK目录。安装Apache Ant 或者直接使用Android Windows SDK自带的ant,地址在eclipse\plugins目录,你需要把这个目录加到你的系统PATH变量中
安装Apache Maven. 并且设置M2HOME和M2环境变量,把M2环境变量添加到你的系统PATH变量中。
安装Git. 确保你安装了windows下的Git,以便可以运行常用的command命令
现在,你已经下载安装了所有的依赖,开始运行 reset.bat
运行APPIUM
要在windows上运行测试用例,你需要先启动Android模拟器或者连接上一个API Level17以上的android真机。 然后在命令行运行appium node .
备注
- 你必须带上–no-reset和–full-reset标记,以用于windows上的android
- 有一个硬件加速模拟器用于android,但是它有自己的一些限制,如果你想了解更多,请参考页面
- 确保在你的AVD的
config.ini中有一个配置项为hw.battery=yes
最简略的安装方式
出于对官方文档的尊重,按照原文翻译,如下介绍安装心得。官方提到的一些工具,其实并不需要安装。 下面介绍我已经测试过的安装和使用过程
安装APPIUM
- 安装nodejs
2、使用npm安装appium,npm install -g appium
运行APPIUM
启动appium,直接运行appium 即可。
更新APPIUM
通过
npm install -g appium来更新appium即可如果有任何疑问,欢迎到testerhome.com来交流
用Appium測試你的app (Android)
首先,先確定你有一個而且必須是只能一個Android模擬器或著設備連接著。如果你輸入
adb devices,你應該只看到一個設備連接著。這將是Appium所用來測試的設備。當然,要連接一個設備,你需要準備好一個Android AVD (參考 系統設置 以了解更多). 如果Android SDK工具在你的路徑下,你可以簡單的執行:emulator -avd <我的Avd名稱>
然後等android模擬器啟動。有時候,因為某些原因,
adb會卡住。如果它沒有顯示任何的設備或其他故障,你可以使用下列指令來重啟:adb kill-server && adb devices
現在,確認Appium已經啟動:
node .
然後執行你的WebDriver測試腳本,腳本必須包含下列的環境參數:
在這個腳本集裡,
myApp必須是下列其中之一:- 一個 .apk 或著 .zip 檔的本地絕對路徑
- 一個包含著你的.apk檔的zip壓縮檔的url
myAppPackage必須是你的應用的java package,例如,com.example.android.myApp.myAppActivity必須是你的希望測試的Android activity, 例如,MainActivity.在你選擇的WebDriver庫裡,設定remote session使用上述的環境參數然後使用端口 4723來連接本地服務器 (或著是使用你在Appium啟動時所設定的任意端口)。現在你已經設置完成了!
- 参考:http://appium.io/slate/cn/v1.2.0/?java#appium-服务器参数
Android 测试工具集01的更多相关文章
- Android 测试工具集02
User scenario testing for Android(功能性测试框架) Robotium is an Android test automation framework that has ...
- 自动渗透测试工具集APT2
自动渗透测试工具集APT2 APT2是Kali Linux新增的一款自动渗透测试工具集.它可以进行NMAP扫描,也可以直接读取Nexpose.Nessus和NMAP的扫描结果,然后自动进行渗透测试 ...
- 2014 非常好用的开源 Android 测试工具
http://www.php100.com/html/it/mobile/2014/1015/7495.html 当前有很大的趋势是转向移动应用平台,Android 是最广泛使用的移动操作系统,201 ...
- Slickflow.NET 开源工作流引擎高级开发(六) -- WebTest 引擎接口模拟测试工具集
前言:引擎组件的接口测试不光是程序测试人员使用,而且也是产品负责人员需要用到的功能,因为在每一步流转过程中,就会完整模拟实际用户发生的场景,也就容易排查具体是程序问题还是业务问题,从而快速定位问题,及 ...
- 常见Android测试工具简介
在进行android设备测试过程中,在进行系统测试时候,往往需要关注到很多方面,导致一个崩溃或者运行一段时间自动重启或者停止的问题很多.最简单来看,影响因素就有:底层硬件设备.OS层.上层app层.另 ...
- Android测试工具 UIAutomator介绍
UI Automator 测试工具定义以及用途 UI Automator 测试框架提供了一组 API,用于构建在用户应用和系统应用上执行交互的界面测试.通过 UI Automator API,您可以执 ...
- 微软modern.IE网站,多版本IE免费测试工具集
微软今天发布了modern.IE,这是一系列免费的.针对Web 开发者的测试工具和资源集合网站,微软希望以此来帮助开发者更轻松地实现跨 IE 和其他现代浏览器.跨设备的兼容性,其他还有代码检测工具.标 ...
- monkey测试===Android测试工具Monkey用法简介(转载)
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...
- (转)【Android测试工具】03. ApkTool在Mac上的安装和使用(2.0版本)
http://blog.csdn.net/wirelessqa/article/details/8997168 http://code.google.com/p/android-apktool/dow ...
随机推荐
- 获取电脑cpu的使用情况
using System; using System.Diagnostics; namespace ConsoleApplication1 { class Program { static void ...
- 【Lucene4.8教程之三】搜索
1.关键类 Lucene的搜索过程中涉及的主要类有以下几个: (1)IndexSearcher:执行search()方法的类 (2)IndexReader:对索引文件进行读操作,并为IndexSear ...
- JQuery中如何动态修改input的type属性
代码如下: jQuery(".member_id").focus(function() { jQuery(this).val(''); }).blur(function() { i ...
- CSS 怀疑 Verify
1. height 之前好像看到有人说,div标签的height设置一个固定值后,div标签的height会随着内容的增多而变大 经测试,内容会溢出div标签,但div标签的height不会随着变化
- 自动生成XML空节点格式的差异
我们用C#开发了上位机配置软件,用C开发了嵌入式软件,然后他们之间的参数交互靠XML文件来沟通. C#中添加一个空的节点有以下几种情况. 不给节点的InnerText赋值: <root> ...
- TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程地址 视频/字幕下载 全 ...
- MYSQL 维护表的常用 5 方法
方法 1. analyze table: 本语句用于分析和存储表的关键字分布.在分析期间,使用一个读取锁定对表进行锁定.这对于MyISAM, BDB和InnoDB表有作用. 方法 2. CHECK T ...
- js对象中什么是可枚举性(enumerable)?
说到枚举,可能很多人都会想到枚举类型,但在javascript对象中有一个属性为可枚举性,他是什么呢? 概念 可枚举性(enumerable)用来控制所描述的属性,是否将被包括在for...in循环之 ...
- Java Thread 总结
目 录 线程的概述(Introduction) 线程的定义(Defining) 1) 继承java.lang.Thread类 2) 实现java.lang.Runnable接口 线程的启动(St ...
- CentOS7 yum lamp 虚拟主机配置 lamp各组件简单影响性能的参数调整--for 一定的环境需求
LAMP Server on CentOS 7 Updated Tuesday, January 13, 2015 by Joel Kruger This guide provides step-by ...