- 浏览: 29653 次
最新评论
到底单元测试是做什么用的?单元测试是一种测试,它不是代码的一部分;单元测试是最低层级的测试,它只保证函数的可靠性,不保证其它;单元测试应该能保证每一个函数的可靠性。
单元测试是一种测试,所以,我们应该以一种测试的眼光去面对它——我们要测试正常情况,边界条件,要对它的测试目标——函数做黑盒分析,白盒分析,选择合适的测试数据,构建测试场景和测试环境——总之,一切测试应该做的事情,单元测试都不应该省略。
理论上来说,单元测试和其他测试一样,也是可以纯手工完成的:我们可以写一段某函数的测试代码,然后输入我们的测试输入,观察测试输出,并跟期望值做比较——事实上这种人工测试,写了一段时间代码的人应该都不会陌生。但是,单元测试有一点特殊性,就是在一个系统中,函数会非常非常的多,变化也比软件的功能频繁的多。面对这么多的函数,这么频繁的变化,纯手工测试是不现实的。所以,我们必须要引入单元测试框架进行自动化测试。注意,这里的单元测试框架只是实现自动化测试的一个手段,对单元测试本身并不产生任何影响——没有单元测试框架,单元测试一样也是可以进行的,只是会痛苦很多。
单元测试框架引入的目的只是为了自动化单元测试,简化单元测试的步骤。所以,对于测试代码的编写,重点应该是:如何搭建测试环境、测试场景;如何选择测试用例;如何校验测试结果。对于测试代码本身,应该尽可能的简单,能不要使用技巧尽量不要使用,目的在于测试,如果测试本身过于复杂,我们不能保证测试的正确性,测试这个工作就白做了。
刚刚提到单元测试是对函数的测试,因此,测试必须是以函数为单位的。每个函数应该拥有自己单独的一个测试,这个测试中,应该针各个方面进行完善的测试,这样我们才能保证这个函数的功能是如我们所愿的。但是单元测试不需要负责函数的组合工作情况。那应该是功能测试的工作,而不是单元测试的工作。如做app功能测试,这个功能测试就是在假定所有函数都工作正常的基础之上,对这些函数组合形成的功能模块进行测试。这种测试,视情况而定,可以使用单元测试框架,也可以使用其他自动化测试方法或者甚至是使用纯人工测试。
发表评论
-
浅谈移动端性能测试的方法和应用
2017-08-30 11:34 369随着移动设备的普及 ... -
Android应用功能测试策略
2017-06-06 17:27 271根据软件说明或用户需求验证App的各个功能实现 ,采用如下 ... -
详解iOS和Android在测试上的不同
2017-05-11 16:52 306只有了解iOS和Android操作系统的不同设计理念,才能 ... -
移动app增量升级测试需注意的问题
2017-05-04 17:43 440作为一个用户,测试 ... -
如何制作移动app测试方案及详细流程
2017-04-21 15:51 4061.首先是测试 资源确认 ... -
移动测试中游戏和应用的不同之处
2017-03-14 14:54 260随着智能设备的普及和移动互联网的兴起,各家互联网巨头纷纷在往 ... -
移动app测试中的基本要求
2017-03-09 14:37 285这次我们聚焦app的重要 ... -
移动APP功能测试之登录、注册、忘记密码测试要点
2017-03-08 14:59 391对于一款APP来说,登 ... -
移动APP测试要点之性能、兼容、接口、交叉测试
2017-03-07 15:05 465之前有写过APP功能测试和安全测试的要点,今天在分享一部分 ... -
挺在移动市场中央,App测试意义非凡
2017-03-03 14:54 317但凡还存活于APP市场的 ... -
如何设计Android APP测试用例
2017-02-24 15:23 525开发应用程序是一项压力很大的工作,人无完人,工作中遇到bu ... -
Web端测试和移动端APP测试之操作特性区分
2017-02-22 15:20 297之前有简单写过,这次详细说说两者的特性 记录bug 在 ... -
从APP测试角度看新增长应用类型如何取得优势
2017-02-17 14:30 234回望2016年,在年末之 ... -
App开发者:一个你从未体验过的自动化测试平台
2017-02-14 14:53 332“测试”在移动互联网界应该是耳熟能详的词汇了,目前几乎所有开 ... -
移动APP测试中的功能与非功能测试
2017-02-07 16:02 382每项开发的新功能都需要进行测试。移动app测试中功能测试是一 ... -
APP下载量成空洞,留住用户最关键
2017-01-10 15:09 234首先请各位扪心自问,自己每天花在移动应用上所占的时间比例是多 ... -
互联网金融如何跨过亿元损失坑洞?精准化测试是关键!
2016-12-01 15:52 2812012年8月1日,骑士资本在纽约证券交易所(NYSE)短短 ... -
用户流失的最大元凶竟是这十大APP性能黑洞!
2016-11-30 17:54 0在APP竞争如此激烈的今天,让用户放弃一款APP真是有一百种 ... -
如何让回归测试变得轻便快捷
2016-11-23 16:15 375是否你在做回归测试 ... -
你必须知道到的黑盒测试用例的精简之道
2016-11-18 11:22 415之前的文章介绍了黑盒 ...
相关推荐
顺便介绍一下单元测试框架进行自动化测试的方面这不是一篇严谨的技术文章。只是一些个人不成熟的感想。在实际开发过程中,我发现在单元测试代码中经常会出现两种情况:最近参与的一个项目里我把单元测试放到很重要的...
【文档标题】:“WEB自动化测试框架文档.doc” ...总的来说,这个WEB自动化测试框架文档提供了全面的测试策略,从设计测试用例到执行、结果分析,覆盖了自动化测试的各个方面,旨在提升整个软件开发过程的效率和质量。
本示例主要展示了如何在Eclipse集成开发环境中利用ANT构建工具和JUnit单元测试框架进行自动化测试。以下是关于这些知识点的详细说明: 1. **Eclipse IDE**:Eclipse是一款流行的开源Java开发环境,支持多种语言的...
在选择自动化测试框架前,需要问自己多种问题,包括需要进行哪个层级的自动化测试、如何管理测试数据、如何选择测试工具和资源等。 六、常见的开源和商业自动化工具 常见的开源和商业自动化工具包括Selenium、...
文档中提到的“MT:美团'Mario'自动化测试框架”就是美团公司在自动化测试领域自主研发的一套自动化测试框架,从美团内部的业务需求和实际应用出发,旨在提高测试效率,保障软件质量。 Mario测试框架的核心特点包括...
CPPUTest 虽然名称上看起来是 C++ 的单元测试框架, 其实它也是支持测试 C 代码的.(由于CSDN必须2分,实在抱歉),安装方法:解压后,进入到目录中:./configure make make install即可
C语言,尽管不如Python或Java那样在自动化测试领域常见,但因其高效、简洁和跨平台的特性,依然被一些项目选择用于构建自动化测试框架。 这个"简易C语言搭建的自动化测试框架"可能包括以下几个关键组件: 1. **...
例如,JUnit是最基础的单元测试框架,适合对单个类或方法进行测试;TestNG则提供了更丰富的功能,如并行测试、测试套件管理等。对于更复杂的集成测试和端到端测试,我们可以选择Selenium WebDriver,它支持多种...
总的来说,基于Java的UI自动化测试框架结合了TestNG、Selenium WebDriver(或Appium)以及一系列辅助工具,为测试人员提供了强大的测试能力,能够有效地对Android应用的用户界面进行自动化测试,确保产品质量。...
本文将详细介绍一种基于CODEUI的自动化测试框架的设计与实现,该框架采用文本模板引擎(T4)来生成相关的自动化测试代码。 ##### 单元测试框架 单元测试框架是用于验证应用软件中的最小可测试单元的工具。常见的...
首先,接口自动化测试是针对应用程序的接口层进行的测试,主要验证服务之间的通信是否正常。它通常使用HTTP/HTTPS协议,通过发送请求并检查响应来确保接口功能的正确性。这里提及的框架可能包含了如JUnit、TestNG等...
Jmeter是一款功能强大且广泛应用于接口自动化测试的工具,它提供了丰富的测试功能和插件,能够满足各种测试需求。本文档主要介绍了如何使用Jmeter实现接口自动化测试,包括安装Jmeter和Ant、配置环境变量、创建框架...
4. **自动化测试框架**:为了实现自动化测试,我们需要一个测试框架,如JUnit或TestNG。它们提供了一种组织和执行测试用例的方式。在接口测试中,我们可以利用Mockito来模拟依赖,避免真实调用其他服务,保持测试的...
本主题将聚焦于如何在基于C语言的嵌入式环境,特别是在Keil IDE中,利用Unity这个轻量级的单元测试框架来搭建自动化测试流程。 Unity是一个专门为微控制器和嵌入式系统设计的开源单元测试框架。它的特点是小巧、...
自动化测试能够帮助开发者快速发现和修复问题,提高软件质量,并在新版本发布前进行充分验证。 二、Android自动化测试的重要性 1. 提高效率:自动化测试相比手动测试更快速,能够节省大量时间,尤其在回归测试阶段...
ZenTaoATF是由禅道开发团队开发的自动化测试框架,它只有一个脚本文件,可以支持各种脚本语言编写的自动化测试脚本,语法简单,使用灵活,后续会和禅道项目管理软件进行绑定和集成。 它的基本工作原理如下: 首先,...
Pytest是目前Python社区中使用非常广泛的单元测试框架,它之所以被称作最强大的自动化测试框架之一,是因为它具有简洁直观的语法、易于编写测试代码以及强大的扩展能力等特点。以下是对Pytest框架使用的详细知识点...
优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。优秀的自动化测试框架。...
通过研究该项目,我们可以学习到如何构建一个完整的自动化测试解决方案,同时了解如何优化和扩展测试框架以满足特定需求。无论你是初学者还是经验丰富的测试工程师,这个框架都能为你提供宝贵的参考。
压缩包中的`pytestDemo`可能包含了上述各种功能的示例代码,你可以通过运行`pytest pytestDemo`来执行这些测试,查看它们如何工作并学习如何利用pytest进行自动化测试。同时,通过阅读源码,可以深入了解pytest的...