行意天下>正文 Android Day02-Android中单元测试(junit测试)&monkey测试

简介:




Android中junit测试有2种实现方式

第1种:一般Android工程的实现方式

    1.在清单文件中添加2项内容

    首先在AndroidManifest.xml中加入下面红色代码:

       <manifest xmlns:android="http://schemas.android.com/apk/res/android"

         package="cn.itcast.action“ android:versionCode="1“  android:versionName="1.0">


  <application android:icon="@drawable/icon" android:label="@string/app_name">

        <uses-library android:name="android.test.runner" />

         ....

  </application>


  <uses-sdkandroid:minSdkVersion="6" />


     <instrumentation android:name="android.test.InstrumentationTestRunner"

          android:targetPackage="cn.itcast.action" android:label="Testsfor My App" />

     </manifest>

    上面targetPackage指定的包要和应用的package相同,即指定要测试哪个应用。

    2.编写单元测试代码

        新建一个类继承AndroidTestCase类,在这个类中调用assertEquals等断言函数。

    assertEquals(期望结果,实际返回值);

        wKiom1WmZr2SfWobAAEQGMJYenY263.jpg

      选择要测试的方法,右键点击“Run As”--“Android Junit Test” ,在Outline中点击亦可。

第2种:直接新建Android测试工程    

       文件----新建------Project

     

       新建一个Android Test Project

      wKiom1WmZ33xNt3_AAC0JS1b5Hk197.jpg

       选择要测试的Android工程

      wKiom1WmaDihRR35AACBEEXBD4Q390.jpg

      那么在新建好的工程中,清单文件就已经自动配置好了。其它的操作和第1种的一样。


新建测试工程目的是可以引用到原工程中的所有的类,然后再新建junit单元测试,简直就是perfect!!!!!!!!!!!!


如果测试的类要用到Context,测试类要继承AndroidTestCase,它里面有mContext可以直接引用 !!!!!!!!!!!!




Android应用程序的monkey测试

    就是在应用程序里随意的点击指定的次数

    adb shell

    monkey -p 包名 次数



Log日志打印类

    在实际开发中,会用到很多的Log打印输出,但是等程序写完之后,不可能挨个去清除Log语句。

    那该怎么办呢?

    定义一个Log的包装工具类

    LogUtils{

        boolean logEnable = true;    //不想Log打印时,将之改为false即可。

        public void v(String tag,String msg)

        {

            if(logEnable)

            {

                Log.v(tag,msg);

            }    

        }

        ...其它的4个不同的输出依次类推。

    }



Debug 

F6:下一行

F8:下一个断点


如果对自己的代码很有自信,觉得完全没有问题,但实际调试结果不尽人意,那就重启工具或电脑吧。






      本文转自屠夫章哥  51CTO博客,原文链接:http://blog.51cto.com/4259297/1675133,如需转载请自行联系原作者



相关文章
|
21天前
|
Java 测试技术 Android开发
Android性能测试——发现和定位内存泄露和卡顿
本文详细介绍了Android应用性能测试中的内存泄漏与卡顿问题及其解决方案。首先,文章描述了使用MAT工具定位内存泄漏的具体步骤,并通过实例展示了如何分析Histogram图表和Dominator Tree。接着,针对卡顿问题,文章探讨了其产生原因,并提供了多种测试方法,包括GPU呈现模式分析、FPS Meter软件测试、绘制圆点计数法及Android Studio自带的GPU监控功能。最后,文章给出了排查卡顿问题的四个方向,帮助开发者优化应用性能。
70 4
Android性能测试——发现和定位内存泄露和卡顿
|
21天前
|
测试技术 Shell Android开发
Android 性能测试初探 (六)
本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试,但本系列文章都不去一一探讨了。
37 6
|
21天前
|
JavaScript 测试技术 Android开发
Android 性能测试初探 (四)
本文介绍了GPU在移动端性能测试中的重要性,并详细解释了过度绘制、帧率和帧方差的概念。针对GPU测试,文章列举了三项主要测试内容:界面过度绘制、屏幕滑动帧速率和平滑度。其中,过度绘制测试需遵循特定标准,而帧速率和平滑度测试则可通过软件或硬件方法实现。在软件测试中,使用Systrace插件和高速相机是两种常用手段。对于不同机型,帧率及帧方差的测试标准也需相应调整。
32 5
|
21天前
|
测试技术 Shell Android开发
Android 性能测试初探 (三)
本文承接《Android性能测试初探(二)》,深入探讨CPU与内存测试。介绍了移动端内存测试的重要性及其测试目标,并详细列举了不同状态下应用内存消耗情况的测试项目。此外,还提供了多种内存测试方法,包括使用`procrank`等工具的具体操作步骤。最后,文章也简要提及了CPU测试的相关内容,帮助读者更好地理解Android性能测试的关键要素。
36 5
|
21天前
|
测试技术 Shell 定位技术
Android 性能测试初探 (五)
聊聊大家不常关注的测试项- 功耗
35 3
|
21天前
|
算法 测试技术 Android开发
Android 性能测试初探 (二)
上回大体介绍了下在 android 端的性能测试项,现在我们就细节测试项做一些阐述(包括如何自己 DIY 测试)
31 4
|
21天前
|
测试技术 API Android开发
Android 性能测试初探 (一)
Android 性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为 2 类: 一类为 rom 版本的性能测试;一类为应用的性能测试。
39 3
|
1月前
|
IDE 测试技术 持续交付
Python自动化测试与单元测试框架:提升代码质量与效率
【9月更文挑战第3天】随着软件行业的迅速发展,代码质量和开发效率变得至关重要。本文探讨了Python在自动化及单元测试中的应用,介绍了Selenium、Appium、pytest等自动化测试框架,以及Python标准库中的unittest单元测试框架。通过详细阐述各框架的特点与使用方法,本文旨在帮助开发者掌握编写高效测试用例的技巧,提升代码质量与开发效率。同时,文章还提出了制定测试计划、持续集成与测试等实践建议,助力项目成功。
53 5
|
1月前
|
Android开发
Android学习 —— 测试init.rc中的条件触发的处理顺序
Android学习 —— 测试init.rc中的条件触发的处理顺序
|
2月前
|
JSON 测试技术 数据格式
单元测试问题之使用JCode5插件生成测试类如何解决
单元测试问题之使用JCode5插件生成测试类如何解决
68 3
下一篇
无影云桌面