关闭

Android学习:测试的相关概念及Android下的单元测试

标签: 测试概念AndroidAndroid单元测试Android JunitTes
147人阅读 评论(0) 收藏 举报
分类:

测试相关的概念:
1. 好的应用都是被测出来的
2. 测试的分类:
1)根据是否知道源代码:
白盒测试: 知道源代码 根据源代码来进行测试 (程序员 高级测试人员)
黑盒测试: 不知道源代码 知道产品的功能 根据功能去测试 (大部分小型公司的做法)

2)根据测试的粒度(精细程度):
方法测试: 写一个测试方法 测试某个类里面的方法
单元测试:可以测试某一个方法 测试多个方法 (安卓下的单元测试 测试Dao层)
集成测试: 软件除了有前端 还有后台 如果对软件的某一模块的前端 后台做统一的测试
系统测试: 对同一产品下的多个软件进行统一测试 多个软件之间存在一定的关系.

3)测试的暴力程度:
压力测试: 单一的时间内 进行重复的频繁的测试. 用来检验系统的稳定性
冒烟测试: 一段时间内的重复的 无规律的测试

Android下的单元测试:
android下的单元测试可以直接用来测试某个方法而不需要直接写完整个功能
android下的junit测试用例与普通的pc机下的java代码不一样,要把应用程序部署到模拟器或者真实的手机才能测试。
android下的单元测试既可以测试一个方法 也可以测试多个方法

Android JunitTest开发步骤

1. 写一个业务方法 

public class MockCalculator {
<span style="white-space:pre">	</span>/**
<span style="white-space:pre">	</span>* 模拟的业务方法 可以认为当前就是对数据库进行操作
<span style="white-space:pre">	</span>*/
<span style="white-space:pre">	</span>public static int add(int x,int y){
<span style="white-space:pre">		</span>return x + y;
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>
<span style="white-space:pre">	</span>/**
<span style="white-space:pre">	</span> * 模拟的业务方法 可以认为当前就是对数据库进行操作
<span style="white-space:pre">	</span> */
<span style="white-space:pre">	</span>public static int multi(int x,int y){
<span style="white-space:pre">		</span>return x * y;
<span style="white-space:pre">	</span>}
}
2. 创建一个类继承AndroidTestCase

3. 编写测试代码(记住抛异常)。

    assertEquals(期待的结果,真实的结果)

public class CalculatorTest extends AndroidTestCase{
	
	//1.继承一个类AndroidTestCase
	//2.定义一个方法 抛出异常
	public void testAdd() throws Exception{
		int addResult = MockCalculator.add(3, 6);
		assertEquals(9, addResult);
	}
	
	public void testMulti()throws Exception{
		int multiResult = MockCalculator.multi(2, 4);
		assertEquals(8, multiResult);
	}

}

4. 配置AndroidMenifest.xml清单文件。

<!--android:targetPackage 需要测试的包 一般是应用的包名-->
    <instrumentation android:name="android.test.InstrumentationTestRunner" 
        android:targetPackage="com.example.junit">
        
    </instrumentation>

5. 运行测试代码,对着方法名右键,run as android junit test。

6. 根据红色或者绿色判断错对。

0
0
查看评论

http中的cookie简介

cookie简单的说就是用户通过浏览器访问一个网站时记录在服务器端的用户标识码,用以在服务器数据库中记录用户在该网站上的所有活动。 工作流程: 当用户张三浏览某个使用cookie的网站时,该网站的服务器就为张三产生一个唯一的识别码,并以此作为索引在服务器的后端数据库中产生一个项目,接着就在给张三...
  • u010275850
  • u010275850
  • 2015-10-26 19:16
  • 280

Android中如何简单的做单元测试

单元测试 单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序list 中去,然后确认该值出现在list 的尾部。或者,你可能会从字...
  • JavaAndroid730
  • JavaAndroid730
  • 2016-11-24 22:51
  • 1918

Android官方MVP项目单元测试

Google在3月份推出了一个项目,用来介绍Android MVP架构的各种组合,可以认为是官方在这方面的最佳实践。令人称道的是除了MVP本身之外,这些工程配备了极其完善的单元测试用例,学习价值极高。本文着重针对todo-mvp的单元测试进行解读。 写在前面 关于MVP 关于MVP的介绍很多...
  • zrbcsdn
  • zrbcsdn
  • 2016-05-03 17:33
  • 3081

Java EE 相关基本概念

Java EE平台是专为企业应用而设计的一系列API,企业应用的特点是大规模、多层次、可扩展、可靠和网络安全。 Java EE服务器实现了Java EE平台的API,并以Java EE标准服务的形式提供给上层应用。这些Java EE标准服务组合起来称为Java EE容器。 Java EE容器...
  • taiyangdao
  • taiyangdao
  • 2016-01-22 10:12
  • 352

关于内存的各种概念

内存条(RAM条),它的全称为单列存储器模块(SIMM),是一块装有3~36片动态随机存贮器(DRAM)的电路板。早期PC机的主存储器采用的是双列直插封装(DIP)的DRAM芯片,因其安装位置较大,不便于扩展,故现在普遍采用SIMM,因为安装一条SIMM相当于安装原来的9片DIP型DRAM芯片。 ...
  • baidu_35679960
  • baidu_35679960
  • 2017-03-27 09:58
  • 326

cookie的概念

Cookies现在经常被大家提到,那么到底什么是Cookies,它有什么作用呢?Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。Cookies是当你浏览某网站时,由Web服务器置于你硬盘上的一个非常小的文本文件,它可以记录你的用户ID、密...
  • fubinhnust
  • fubinhnust
  • 2013-03-05 09:36
  • 1843

Android单元测试(五):网络接口测试

在平日的开发中,我们用后台写好给我们接口去获取数据。虽然我们有一些请求接口的工具,可以快速的拿到返回数据。但是在一些异常情况的处理上就不太方便了。
  • qq_17766199
  • qq_17766199
  • 2017-12-23 20:27
  • 1165

Oracle分区表的概念及操作

摘要:在大量业务数据处理的项目中,能考虑使用分区表来提高应用系统的性能并方便数据管理,本文周详介绍了分区表的使用。         1.表空间及分区表的概念          2.表分区的具体作用 ...
  • NeverGiveup54
  • NeverGiveup54
  • 2015-08-08 22:44
  • 514

Android Studio系列-Activity单元测试

前言上一篇讲的是如何在Android Studio中进行Junit单元测试,这篇来简单记录一下如何针对Activity进行单元测试。新建一个项目我这里新建一个UnitTestDemo项目新建LoginActivity、IndexActivtypackage com.devilwwj.unittest...
  • wwj_748
  • wwj_748
  • 2016-02-22 18:16
  • 4908

Android开发中单元测试的两种方式

Android开发中单元测试的两种方式 一位优秀的程序员也同样不能保证自己的程序没有bug,因此编写合适的测试程序是完全有必要的,这样也会降低程序在后期出现各种奇奇怪怪bug的可能,降低维护成本,未雨绸缪将bug扼杀在摇篮之中。 看到网上有很多依旧用写java单元测试的方式在写android程序的单...
  • feishangbeijixing
  • feishangbeijixing
  • 2014-12-30 23:11
  • 1751
    个人资料
    • 访问:52745次
    • 积分:908
    • 等级:
    • 排名:千里之外
    • 原创:38篇
    • 转载:3篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论