51CTO博客开发
今天读了一篇文章:《腾讯前员工创业笔记:那些跟钱有关的事儿》(http://tech.163.com/14/0515/08/9S9975C5000915BF.html),摘录两段: 刚开工的时候买办公电脑,我心想创业公司应该省钱,就把机箱CPU硬盘内存显卡买来自己装。虽然“科班出身,基本功扎实”,但因为缺乏经验,装一台机器要花费足足半天时间。于
软件开发过程有一个很自然的比喻:建楼房,要画图纸、搭架构、砌砖头。这个比喻大体说得过去,问题是,这个“砖头”绝非普通的砖头,具有以下特性: 一、每一块都由手工制作; 二、每一块的材质、形状、尺寸都不同; 三、任何一块有问题,在某种天气下,房子会漏水;如果1%甚至1‰的砖头有问题,房子会到处漏水
有一种说法:程序员测自己的代码效果不好,因为测试是找错,程序员不愿意去证明自己是错的,别人测效果才好,对吗?这种说法是根本错误的,误导了无数人。正好相反,单元测试要自己测效果才好,别人测则几乎没有效果,除非有函数级的详细文档。 单元测试的三种方式:程序员编码同时测试、程序员编码后测试、由别人测试,成本的比例大概为1:3:5,测试效果的比例大概为
单元测试常见问题简答。
俺在51CTO开博,这篇只用于博客搬家,CSDN的博客仍然是一样维护的哈。
三月份,准备搞一个C/C++单元测试在线培训,草拟了一份课程提纲,发给一位老朋友(马工)征求意见,马工在一家研究院工作,领导一个近百人的开发团队,单元测试推广和实施都很有经验,给我的意见只有几句话: “删除开源框架部分,这个太昂贵,用的企业会越来越少,讲这个浪费听众的时间。我猜你花一大段时间来讲开源框架,目的仅仅是为了减少宣
【摘要】本文分析了传统单元测试技术的不足,提出了表格驱动的单元测试技术,新技术可以大幅降低单元测试的难度及综合成本,用户不需要编写测试代码,测试工作效率通常是现有技术的五倍以上。新技术已在C/C++单元测试工具Visual Unit 4中成功应用。这是第一节。一、传梳单元测试技术的缺陷分析 单元测试是软件开发过程中保证代码质量,提升开发产能的重要手段。 
嵌入式测试通常涉及硬件的模拟与控制,需要在单元测试用例中随意模拟和控制硬件行为,以及模拟中断对全局变量的修改,并解决死循环、超时等问题。使用Visual Unit 4,通过在测试用例中设置内部输入,可以随意模拟和控制硬件行为;利用测试用例的多次赋值功能、跳过底层函数等功能,可以轻松解决死循环、超时等问题。用Visual Unit 4做嵌入式单元测试特别舒服。&
单元测试是最早阶段的软件测试,面对的目标最小,可以综合使用黑盒测试方法和白盒测试方法,按理说,单元测试用例的设计应该是最简单的,但实际上,单元测试用例的设计常让人感觉无从下手,这是什么原因?是代码真的不具有“可测性”吗?还是测试思路和方法不对?正确的测试思路和方法是什么?单元测试工具应该具备什么样的功能,才能支持快速地构建测试用例? &n
单元测试与以前不同了 测试代码功能逻辑,实现高效率高质量编程。 如果不做单元测试,编程产能大部分消耗在调试上。一个模块的纯编码时间如果为10,那么,即时调试(编码过程中的调试)时间在10-50之间,后期调试(集成后排除bug的调试)时间也在10-50之间。调试一个bug,一两个小时不知不觉就过去了,一两个小时能够编写
十年磨一剑,霜刃未曾试。今日把示君,谁有麻烦事?
各位新老朋友: 2012第十六届中国国际软件博览会(简称“软博会”)将于5月31日—6月2日在北京举行。届时凯乐软件将参展本次盛会,并在会上举办主题为《单元测试实践的主要问题与解决》的专题讲座,诚邀您光临参观和交流! 展会地点:北京展览馆(北京市西城区西直门外大街135号) 我司展台:12
(承上篇)3.3 如何解决“做不好” 现在来看做不好的问题。做不好的主要原因,是高标准的测试覆盖难以实现。 为什么要关注测试覆盖呢?因为未覆盖的单位,通常对应未测试的数据分类,也就是说,可以用覆盖率来检查测试的完整性,衡量测试效果。 应该在完成功能测试的基础上,统计覆盖率,找出遗
(承上篇) 这个底层函数返回的是一个对象指针,如何模拟呢?双击函数名,打开底层模拟器。 首先,在前置代码中定义对象并初始化。然后,在模拟值中填写这个对象的地址。 这是模拟的结果。
(承上篇) 首先,我们要让这个取温度的函数返回1,表示取温度成功。双击函数名。 模拟值填1。 然后,设定环境的温度。双击这个表示环境温度的参数。 模拟值填28。&
(承上篇)3.2 如何解决“做不了” 上面我们只是用一个独立的函数来演示ETDD过程。在实际的工作中,代码之间通常是互相依赖的,这种依赖关系会造成测试难于进行,这就是“做不了”的问题。 我们首先来分析一下。“做不了”主要是指可测性问题。可测性问题的核心是内部输入。在解释内部输入前,我们先来看一下一般的输入:外部输入
(承上篇) 新加的这几行代码完成字符串的移动。这样,代码基本上写完了,结果对不对呢?CTRL+F7编译一下。 结果是完全不对的。我们来分析一下,输入是这个,全部代码都是黑色,表示都执行到了,跟我设想的一样。问题在哪里呢? 看一下计算左边空格的代码,经过计
二、 单元测试实践的主要问题 单元测试有个特点:测试简单独立的代码很容易,但要在实际工作中做好单元测试却很困难。 根据我们的经验,企业在实施单元测试时,通常会面对四大问题—— 不愿做:程序员没有单元测试习惯。 &n
1.3 单元测试的效益 单元测试的效益可以说是立竿见影,并且会推动整个开发过程的改进。 首先,单元测试可以保证代码的质量。因为只有单元测试,能够全面检测代码单元的功能逻辑,排除代码中大量的、细小的错误。 其次,排错成本最小。如果在编码阶段同时进行单元测试
本文是我在“第十届中国系统与软件过程改进年会广东会场”所作演讲的整理稿,主要分享单元测试的一些要点、单元测试实践的主要问题,以及如何来解决这些问题。 一、 单元测试概述 1.1 什么是单元测试 单元测试,就是针对代码单元的独立测试。为什么需要单元
程序员的发展路线一般有两条:技术路线、管理路线,其实还有一条前景和钱景都很不错的路线:咨询老师。凯乐软件即将开始招聘技术指导老师,及老师团队的中层管理者:技术部经理。这两个职位特别适合性格开朗、有一定C/C++编程经验、希望寻求更广阔发展空间的程序员或团队主管。这一期只在广州招聘。  
VTDD概述 TDD(Test-Driven Development,测试驱动开发),是一种具有突出优点的软件开发、设计和测试方法。TDD的基本思路是测试先行,通过测试来推动开发的进行。TDD的重要目的不仅在于通过测试使产出的代码质量可控,还在于在开发过程中帮助程序员去除模棱两可的需求。 T
假如要编写一个CMath类,其中有一个方法abs(),原形如下: class CMath{public: int abs(int a);}; 一般的编程习惯是直接写代码,然后调试,至于测试,则以后再说。TDD要求,在未编写测试代码前不能写任何产品代码。这里使用的测试框架是CppUni
什么是TDD TDD是Test-Driven Development的缩写,即测试驱动开发。TDD的基本思路是利用测试来推动开发的进行,并不是单纯的测试过程。TDD是极限编程的核心之一,但TDD也可以单独运用。 TDD的优势 明确需求:在软件开发过程中,需求常常是易变且不易描述的。项目的整体需求最终会细化为代码的需求,即每个
4 测试过程 示例类定义如下: class CMyClass{public: //加法函数 int Add(int a, int b); //计算空调制冷器运行时间 int WorkTime(int* pSecond);}; 加法函数Add(
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号