Android单元测试
来源:互联网 发布:象棋等级分算法 编辑:程序博客网 时间:2024/06/05 09:44
一、测试相关概念
app测试是整个软件开发过程中最后的把关者,关乎到代码的健壮性、安全性和使用的合理性、便捷性等。
好的app不是写出来的,是测试出来的
1.测试是否知道源代码
黑盒测试 不知道代码
白盒测试 知道代码
2.按照测试的粒度
方法测试
单元测试 如android开发中的Junit测试
集成测试
系统测试 如电力、银行等系统的测试
3.按照测试的暴力程度
冒烟测试 如CPU等的硬件测试
压力测试 如12306网站等的测试
压力测试对应与android的monkey测试,使用cmd进行测试 ①adb shell ②monkey -p package count
目前流行的云测试,如百度云测腾讯云测等等
二、单元测试
实例演示如何进行单元测试,第一步创建一个Calc计算类并添加一个add方法,然后添加一个单元测试包并在里面再添加一个测试类及测试方法,效果如下图,代码见后面:
Calc.java代码:
package com.zgs.Junit;public class Calc {public int add(int x,int y) {return x+y;}}CalcTest.java代码:
package com.zgs.JunitTest;import com.zgs.Junit.Calc;import android.test.AndroidTestCase;public class CalcTest extends AndroidTestCase {public void addTest() {Calc calc = new Calc(); int result = calc.add(8, 2);assertEquals(10, result);}}最重要的一步是修改清单文件AndroidManifest.xml,添加instrumentation指令和uses-library使用库,其中Instrumentation指令中的targetPackage包名要对应实际项目的报名,在编写其它单元测试时直接将这两段代码拷贝过去就OK了,代码如下:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.zgs.Junit" android:versionCode="1" android:versionName="1.0" > <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.zgs.Junit" > </instrumentation> <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="22" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <uses-library android:name="android.test.runner" /> <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>运行测试注意事项:
①切到测试类文件,如本例中的CalcTest.java
②在Outline窗口中找到对应的测试方法,如本例中的addTest()
③右击Run As =>Android JUnit Test
④测试结果会在JUnit窗口中显示,绿条表示测试通过,红条表示测试失败
instrumentation指令和uses-library使用库应急处置方案
新建一个测试项目,在项目中的清单文件会自动将指令和使用库加入到测试项目中,此时可以将这两段代码拷贝到自己项目的清单文件中,也可以在测试项目中进行单元测试
0 0
- android 单元测试
- Android单元测试
- Android单元测试
- android单元测试
- Android单元测试
- Android单元测试
- android单元测试
- android单元测试
- Android单元测试
- Android单元测试
- android 单元测试
- android 单元测试
- Android--单元测试
- android单元测试
- Android单元测试
- Android单元测试
- Android单元测试
- ANDROID 单元测试
- Mysql innodb 间隙锁
- vs2012打开.sln文件之后显示该项目已被卸载
- CAS票据之ST与TGT过期策略详细说明
- Javascript 事件处理
- Windows和Ubuntu双系统安装
- Android单元测试
- 第39章 ETH—Lwip以太网通信—零死角玩转STM32-F429系列
- 开源第二弹:来自百度的71款开源项目
- oracle结构
- 显示模型信息
- Android性能优化的浅谈
- macbook 上运行ifconfig涉及到的端口
- FFmpeg源代码简单分析:avformat_open_input()
- 自定义View之垂直翻页公告