我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android单元测试与日志输出

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android单元测试与日志输出

  使用单元测试可以保证我们开发的应用质量,一般我们开发完业务层后对业务层进行测试,确保业务层不会出现bug,对业务层通过之后控制层可以调用业务层完成所需的功能。

  以前做Java开发的时候用junit进行测试,利用System.out.println()方法在控制台进行打印,下面我来讲讲如何对Android应用进行 单元测试以及日志输出。

  单元测试与日志输出

  1、单元测试步骤:

  第一步:在AndroidManifest.xml文件中插入以下代码,在 元素中插入,然后在中插入

  第二步,编写单元测试代码 测试类必须继承AndroidTestCase类

  第三步,执行测试

  2、测试示例

  首先在AndroidManifest.xml中添加第一步所需代码,终代码如下:

    http://schemas.android.com/apk/res/android"     package="cn.csdn.android.junit"     android:versionCode="1"     android:versionName="1.0" >                 android:icon="@drawable/ic_launcher"         android:label="@string/app_name" >                             android:label="@string/app_name"             android:name=".Junit_testActivity" >                                                        

 

 

 

           

   

<instrumentation    android:name="android.test.InstrumentationTestRunner"     android:targetPackage="cn.csdn.android.junit"     android:label="MyJunitTest"     >

 

 

 

 

 

 

 

 

 

  然后新建测试用例:

  用例方法为 public void func1(){}其中初学者常犯的错误是为测试方法添加参数,一定要注意测试方法是不需要传入参数的,如果测试方法内部出现异常,建议是直接抛出,而不要捕获异常,异常抛出后会被测试框架获取,在控制台显示出来。测试类的内容如下:

package cn.csdn.android.junit; import junit.framework.Assert; import android.test.AndroidTestCase; public class MyTest extends AndroidTestCase{ public void testFunc1() throws Throwable{ User u = new User(); u.func1(); } public void testFunc2()throws Throwable{ User u = new User(); Assert.assertEquals(20,u.func2()); } } 

  Assert类在此的作用是 判断所得到的结果与期望值的关系

  第三步,运行测试用例:先进入大纲视图(Outline),如果Eclipse中没有,可在工具栏window中找到,然后添加上即可。然后右击测试用例,找到[Run As],点击【Android JUnit Test】,结果条显示为绿色表示正确:

 

  3、日志输出

  Console控制台只能输出安装信息,如果在程序中添加一行System.out.println("aaa"),如果是进行Java开发,则会在console控制台打印,但在Android中却不能在console中打印出来,而是会在LogCat中打印出来,在Android程序中进行信息输出,一般采用Android.util.Log类的静态方法进行实现,log类所输出的日志的内容从少到多,分别是ERROR,WRAN,INFO,DEBUG,VERBOSE,对应的五种不同类型的首字母,分别是Log.e(),Log.w(),  Log.i(),   Log.d (), Log.v()五种静态方法,使用不同的方法输出的颜色不同,如下图所示:,单击每个按钮,可以过滤其自身类型以及右侧类型的日志,如点击I 按钮,会显示IEW三种类型的日志,而VD类型的日志则不会显示出来

  1)编写日志输出测试类,代码修改如下

package cn.csdn.android.junit; import junit.framework.Assert; import android.test.AndroidTestCase; public class MyTest extends AndroidTestCase{ private final static String TAG = "myTag"; public boolean onTouchEvent(MotionEvent event) { Log.i(TAG,"onkeyTouch"); showInfo("   "+ event.getX()+" "+ event.getY()); return super.onTouchEvent(event); }

  说明:Log.i(String tag,String sag),tag是这条信息定义的一个标签,在开发时通常采用他所在类的类名,这样方便我们追踪输出信息,也方便我们看到信息时知道他出自哪个类,msag是这个参数希望输出的内容

  2)执行测试:执行方法和上面的测试方法几乎相同,打开日志查看器“LogCat”,查看是否输出这个信息,如下图:

 

  点击上图中的“+”,弹出添加LogFilter界面,在其中填写的信息如下图:

 

  点击“OK”,在LogCat管理器中多出一个选项卡,“MyTest”,在该选项卡中出现我们在代码中想要的信息:

 

 

 

 

 

 

 


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android单元测试与日志输出

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android单元测试与日志输出

使用单元测试可以保证我们开发的应用质量,一般我们开发完业务层后对业务层进行测试,确保业务层不会出现bug,对业务层通过之后控制层可以调用业务层完成所需的功能。以前做Java开发的时候用junit进行测试,利用System.out.print
2022-06-06

Android日志输出、单元测试

Android日志输出、单元测试由于这几天睡得晚,导致第二天都没有精神,还晕晕的听课,效率低,我不能熬夜了。下面我来讲讲学习的知识点吧。一、 单元测试有了测试以后我们遇到bug的时候好解决了。单元测试需要以下几步:1. 首先要在An
2022-06-06

Android单元测试与模拟测试

考虑可读性,对于方法名使用表达能力强的方法名,对于测试范式可以考虑使用一种规范, 如 RSpec-style。不要使用逻辑流关键字(If/ese、for、do/while、switch/case),在一个测试方法中,如果需要有这些,拆分到单
2022-06-06

Android单元测试研究与实践

Android单元测试介绍处于高速迭代开发中的Android项目往往需要除黑盒测试外更加可靠的质量保障,这正是单元测试的用武之地。单元测试周期性对项目进行函数级别的测试,在良好的覆盖率下,能够持续维护代码逻辑,从而支持项目从容应对快速的版本
2022-06-06

Android 单元测试出现错误及改正

1.Test run failed:Instrumentation run failed due to java.lang.ClassNotFoundException原因是找不到单元测试的类,后来经过仔细看代码及网上查找终于解决,现在记录
2022-06-06

Android、JUnit深入浅出(六)??如何运行单元测试?

Android、JUnit深入浅出(六)——如何运行单元测试? 单元测试工具前面我们学习了很多JUnit的程序,在Android ADT插件中已经为我们提供了很多这方面的功能,方便我们进行单元测试。但是如何进行单元
2022-06-06

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录