Calabash 快速入门 (Android)

概述

本篇包括以下内容:
环境:mac/android studio
目标:用Calabash实现一个简单app的自动化测试
测试用例:信用卡的长度为16位
实现过程:搭建环境,编写APK,写测试用例,运行

流程

  • 安装Calabash沙箱
  • 编写app
  • 写测试脚本
  • 在模拟器或者真机上运行测试脚本,以及上传到cloudtest.xamarin.coms上进行测试。

安装Calabash沙箱-[官方链接]

为什么安装沙箱?

To get up and running as fast as possible to use Calabash, we recommend you use our Ruby Sandbox. The sandbox is a pre-configured ruby environment that has everything you need to start exploring Calabash and running tests right away. The sandbox is configured with the same version of Ruby running on Xamarin’s Test Cloud, so you don’t need to worry about ruby compatibilities.

如何安装?

curl -sSL https://raw.githubusercontent.com/calabash/install/master/install-osx.sh | bash

安装完成后,你会看到如下画面

安装成功后,在命令行执行calabash-sandbox进入沙箱模式

编写程序,生成APK-[官方链接]

程序源码下载:
下载地址1
下载地址2

打开源码:
用android studio打开源码,很重要的一点是添加上网权限

<uses-permission android:name="android.permission.INTERNET" />

创建一个签名,打一个带签名的包

写测试脚本[官方链接]

在沙箱模式下进入工程目录,在命令行中输入calabash-android gen

此时会发现工程目录下添加了一个features目录,my_first.feature即为我们的脚本文件

打开my_first.feature文件,改成如下内容:

Feature: Credit card validation.Credit card numbers must be exactly 16 characters.Scenario: Credit card number is too longGiven I wait for the "MainActivity" screen to appearWhen I enter "99999999999999999" into input field number 1And I press "validateButton"Then I should see "Credit card number is too long."

运行脚本

重签APK

$ calabash-android resign

运行脚本

$ calabash-android run

运行过程

运行结果:

上传testcloud.xamarin.com进行测试请参见网站。

2016年3月18日记于此与君共勉。

Calabash 快速入门 (Android)相关推荐

  1. 视频教程-快速入门Android开发 视频 教程 android studio-Android

    快速入门Android开发 视频 教程 android studio 任苹蜻,爱学啊创始人 & CEO,曾就职于某二车手公司担任Android工程师后离职创办爱学啊,我们的宗旨是:人生苦短,我 ...

  2. 使用Cloud DB构建APP 快速入门 - Android篇

    概述 此示例应用演示了如何快速的使用Cloud DB构建简单的图书管理服务.通过快速入门和示例应用,您将会了解到如下信息: 如何使用Cloud DB进行应用开发. 应用数据如何写入到Cloud DB. ...

  3. 快速入门 Android Jetpack 以及相关 Kotlin、RxJava、MVVM 等主流技术,独立构架 App 的基础技能

    android-jetpack-demo 项目地址:zhiwei1990/android-jetpack-demo 简介:

  4. 认识AndEngine选自Android 2D游戏引擎AndEngine快速入门教程

    认识AndEngine什么是AndEngine 随着Android手机.平板的盛行,Android下的游戏也不断的变得火热.而对于游戏开发有兴趣的同学们,应该也想要学习开发游戏.虽说游戏开发的引擎较多 ...

  5. Android 2D游戏引擎AndEngine快速入门教程

    Android 2D游戏引擎AndEngine快速入门教程 介绍:AndEngine是一款知名的Android 2D游戏引擎.该引擎代码开源,并且可以免费使用.本书详细讲解如何使用AndEngine引 ...

  6. Android Gradle(三)Groovy快速入门指南

    本文首发于微信公众号「刘望舒」 原文链接:Groovy快速入门看这篇就够了 前言 在前面我们学习了为什么现在要用Gradle?和Gradle入门前奏两篇文章,对Gradle也有了大概的了解,这篇文章我 ...

  7. 《Android构建MVVM》系列(一) 之 MVVM架构快速入门

    前言 本文属于<Android构建MVVM>系列开篇,共六个篇章,详见目录树. 该系列文章旨在为Android的开发者入门MVVM架构,掌握其基本开发模式. 辅以讲解Android Arc ...

  8. Hello, Android 快速入门

    Hello, Android Android 开发与 Xamarin 简介 在这两节指南中,我们将 (使用 Xamarin Studio或 Visual Studio)建立我们的第一个 Xamarin ...

  9. realm android,Realm for Android快速入门教程

    介绍 如果你关注安卓开发的最新趋势,你可能已经听说过 Realm .Realm是一个可以替代SQLite以及ORMlibraries的轻量级数据库. 相比SQLite,Realm更快并且具有很多现代数 ...

最新文章

  1. 二叉树:最近的公共祖先 Lowest Common Ancestor of a Binary Tree
  2. ABAP开发常用的表
  3. MyBatis关键配置-接口的扫描注册
  4. 双谷人才财务管理(序)
  5. SpringCloud企业实战专栏
  6. 如何在mysql中添加复选框_如何使用输入和复选框更新mysql
  7. request获取url的参数编码问题
  8. 电脑删除的文件怎么恢复?你要找的方案
  9. 【nexus】nexus 仓库组的概念 以及相关配置 代码发布相关
  10. c++线程类 linux,C++进阶学习——线程基类的设计(Linux)
  11. SIAMfc++:采用目标估计准则,实现稳健和准确的视觉跟踪
  12. html下拉框选择日期,javascript实现日期三级联动下拉框选择菜单
  13. 【转】MS.Net开发人员必备的十种工具
  14. 创业者两大特征:喜欢折腾与坚持不懈
  15. 湖北武汉劳务员证书劳务人员实名制的难点分析建筑七大员培训
  16. 在Qt中使用OpenGL(四)
  17. 研究生英语期末复习(Unit1)
  18. 大三使用Turtle库画太极八卦图
  19. 105. 填充书架-M
  20. 用python画股票价格走势图

热门文章

  1. TensorFlow入门 | 人脸检测与识别
  2. ssm+jsp计算机毕业设计奥迪汽车配件网络销售系统8avr0(程序+LW+源码+远程部署)
  3. java同步和异步的区别_java中同步与异步区别是什么
  4. php隐藏指定id的div,CSS_纯css3显示隐藏一个div特效的具体实现,复制代码代码如下: !DOCTYPE H - phpStudy...
  5. Keycloak各种配置及API的使用
  6. Redis学习_2_数据类型_2_hash
  7. Vue:利用Plupload插件封装文件上传组件
  8. Python-006-灰色关联分析法
  9. java 成员变量调用其他类方法6_方法内部类中不能访问外部类的成员变量。
  10. FTP口令受到穷举法暴力***后的蛛丝马迹