Appium是一个支持原生,混合和移动web apps的开源的跨平台测试框架工具。

ANDROID依赖

  • Android SDK API >= 17 (Additional features require 18)
  • Appium支持OS X上的Android, Linux和Windows上的beta支持.确保你通过如下的指示来配置你需要运行测试的不同系统的环境
    • linux
    • osx
    • windows
    • 开始安装

      1. 安装nodejs 0.8版本及以上, 通过官方的安装程序来安装。

      2. 安装android的sdk包,(http://developer.android.com/sdk/index.html), 运行依赖sdk中的'android'工具。并确保你安装了Level17或以上的版本api。设置ANDROID_HOME系统变量为你的Android SDK路径,并把tools platform-tools两个目录加入到系统的Path路径里。因为这里面包含有一些执行命令

      3. 安装java的JDK,并设置JAVA_HOME 变量为你的JDK目录。

      4. 安装Apache Ant 或者直接使用Android Windows SDK自带的ant,地址在eclipse\plugins目录,你需要把这个目录加到你的系统PATH变量中

      5. 安装Apache Maven. 并且设置M2HOME和M2环境变量,把M2环境变量添加到你的系统PATH变量中。

      6. 安装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

        1. 安装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的更多相关文章

  1. Android 测试工具集02

    User scenario testing for Android(功能性测试框架) Robotium is an Android test automation framework that has ...

  2. 自动渗透测试工具集APT2

    自动渗透测试工具集APT2   APT2是Kali Linux新增的一款自动渗透测试工具集.它可以进行NMAP扫描,也可以直接读取Nexpose.Nessus和NMAP的扫描结果,然后自动进行渗透测试 ...

  3. 2014 非常好用的开源 Android 测试工具

    http://www.php100.com/html/it/mobile/2014/1015/7495.html 当前有很大的趋势是转向移动应用平台,Android 是最广泛使用的移动操作系统,201 ...

  4. Slickflow.NET 开源工作流引擎高级开发(六) -- WebTest 引擎接口模拟测试工具集

    前言:引擎组件的接口测试不光是程序测试人员使用,而且也是产品负责人员需要用到的功能,因为在每一步流转过程中,就会完整模拟实际用户发生的场景,也就容易排查具体是程序问题还是业务问题,从而快速定位问题,及 ...

  5. 常见Android测试工具简介

    在进行android设备测试过程中,在进行系统测试时候,往往需要关注到很多方面,导致一个崩溃或者运行一段时间自动重启或者停止的问题很多.最简单来看,影响因素就有:底层硬件设备.OS层.上层app层.另 ...

  6. Android测试工具 UIAutomator介绍

    UI Automator 测试工具定义以及用途 UI Automator 测试框架提供了一组 API,用于构建在用户应用和系统应用上执行交互的界面测试.通过 UI Automator API,您可以执 ...

  7. 微软modern.IE网站,多版本IE免费测试工具集

    微软今天发布了modern.IE,这是一系列免费的.针对Web 开发者的测试工具和资源集合网站,微软希望以此来帮助开发者更轻松地实现跨 IE 和其他现代浏览器.跨设备的兼容性,其他还有代码检测工具.标 ...

  8. monkey测试===Android测试工具Monkey用法简介(转载)

    Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...

  9. (转)【Android测试工具】03. ApkTool在Mac上的安装和使用(2.0版本)

    http://blog.csdn.net/wirelessqa/article/details/8997168 http://code.google.com/p/android-apktool/dow ...

随机推荐

  1. Reverse Linked List II java

    public static ListNode reverseBetween(ListNode head, int m, int n) { ListNode pre=head,current=head, ...

  2. 获得创建临时表的session id

    通过sql server的default trace和tempdb中的sys.objects视图,你能够获得创建临时表的session id,下面是相应的sql语句: DECLARE @FileNam ...

  3. Spring-----8、深入理解容器中的bean

    转载自:http://blog.csdn.net/hekewangzi/article/details/45648687

  4. struts2开发经验小结(method="{1}"等)

    这里的{1}表示接收前面action里通过通配符传来的值,例如你配置的是<action name="*Crud" class="example.Crud" ...

  5. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.LoginActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class

    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.L ...

  6. linux function

    #!/bin/bash function sayHello() { #这里的{ 和它前面的)之间可以没有空格 echo "Hello $1" } sayHello 'Neeky'

  7. Java Web 中 过滤器与拦截器的区别

    过滤器,是在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的 action进行业务逻辑,比如过滤掉非法u ...

  8. [python 基础] Class 一些基本概念

    class example(object): data1 = '' date2 = "" def __init__(self, para): self._function1() d ...

  9. AsyncTask加载图片

    http://blog.csdn.net/sodino/article/details/7741674 http://www.cnblogs.com/weisenz/archive/2012/04/1 ...

  10. JVM 看不到某些异常的stacktrace问题(转)

    在java 1.5的release notes里面可以看到这样一句话: The compiler in the server VM now provides correct stack backtra ...