- 热门文章:
- · 初学者入门:软件测试从零开始
- · EA与Rose UML建模工具比较
- · Java手机程序设计入门电…
- · UML谁的硬伤?
- · 《程序员》高展专栏——…
- · 软件工程师的年终总结
- · 企业品牌营销秘诀
- · 企业信息化不仅仅是“无纸化办公”
- · 无网不胜的中小企业网站建设
- · 我国企业电子商务经营战略的探析
- · 企业信息化的基础
- · 智慧型企业的必由之路
对项目开发中几种测试类型的理解
固然,一级级把关,可以把质量提高到至少一个档次以上;但就每一个环节而言,仍然是在开发的最后阶段。所以,看来本人的水平还是不到家,"测试是开发的第一步"难以理解,唯一可理解的就是规范先行,文档先行,文档规范化总应该是在编码以前,这也是QA的主要内容;大概这还多少算解释得通。这样,测试和规范两样东西就重合起来了,从严格角度看,测试就是测试,规范归入规范,还是从模块(项目)后的测试开始理解吧;所以所有关于编程和文档、设计规范的内容本人全部不纳入测试讨论范围。或者说,我们重点放在QC上,而不是着眼于规范的QA,尽管那也非常重要。
单元测试(Unit test):是针对模块组件或方法的测试。在本人的操作中,一般是开发员工作范围内的测试;在具备组件接口规范的情况下,一般需要做一个测试工具模拟调用环境,编写测试实例,通过断点情况监视模块实际工作是否正常。一股采用这种方式开发的单一功能模块质量都是非常高的。但是如果没有统一的模块规范,那么开发与测试的工作量接近一比一;但如果模块是按统一的标准开发的,那么同一套测试套件就可以用到各个模件上,从而节省了测试时间。本人认为这属于开发部门工作范围内的测试,与QA/QC部门没有什么大的关系,事实上,在这一层次的用例也不是QC可以做到和理解的。
白箱测试:在理解内部流程的情况下针对逻辑流程设计测试实例,目的是找出极限边缘以及内在的逻辑错误。单元测试中白箱测试的比例很高,(原因不难理解,还有谁比作者自已更理解模块的构造流程的?)。
黑箱测试:这是QC部门的主要工作。黑箱测试主要在于编写测试实例。不过在实际操作中,都是把最不懂技术的成员分配做测试,最高技术水平就是会用VSS,所以也就别指望编什么测试实例。所谓的黑箱测试,常常是对着菜单按钮,这个按下去,噢,有东西出来了,对的,打个勾——其实,这时侯的实例就是一个个按下去然后看看有没有输出,而且只限于界面方面,内在的部分和边缘情况大概是不用指望的。但据作者所知,在CMM达到四以上的国外软件公司中,黑箱测试是对软件评价的最主要方式,通过合适的测试实例,除了最常见的可用性测试外,还包括压力测试,和怪用测试(Monkey test)。
压力测试:评价一个系统极限可以承受的压力是多少,同时在超负荷后的的响应情况;同时,在极限状况下,一些平时不太出现的bug也会浮现出来。所以,这个测试作者认为不应该单独由QC部门进行,而应该由开发部门与QC部门联合进行。理想的系统在极限测试状况下就算响应不及,也不至于当机,并在负荷恢复正常后一段时间内可以恢复正常运转。这时当初对windows恶评的原因之一:象网站一旦超出100-200个concurrent,windows不但罢工还死掉了;不得不重启系统(当然,windows任意硬重启都能死鱼翻生,大多数情况下吧,也属一种难能可贵的优点);而linux在超出负荷后一般情况下下降曲线不至于太明显——不过这也不是绝对的,作者就发现一旦linux在极限状态下进入内存抖动时,死相和windows差不了多少;所以内存不至于耗干是 linux可靠性能超过windows的重要因素。
回归测试;在修改其中一个模块后看其他模块有什么问题。作者认为这个测试是过程化程序的观念产物,在模块化软件中相互耦合程度低,而且服从统一的调动协议,是不是修改真是自家里的事情,和他人(模块)没有半点相干。
整体测试:把不同的模块连结后,看看联合工作情况如何。这实际上是对接口协议的测试。作者认为是可以作为接口互动部分的设计一部分工作,没有必要摆出来作为流程之一。同理还有系统测试,反正最后整个系统运行起来是什么情况。看似大,但如果前面已经做到好好的,这里如果出问题那才叫怪呢!
Alpha测试:放任内部成员胡作非为的测试;
Beta测试:让全世界的坏人都胡作非为的测试。
过了这一关后,大概应该可以了吧??在欧洲美国日本的规范的软件公司大概是可以了。但在中国可不见得,许多时侯业务需求人员会蹦出来说:“不是这个样子的!”早的时侯他不知上那里去了!或者“加上另一个什么功能吧?”,早的时侯他大概是睡觉了。大家伙儿前面做的事情,就冲这两句话就全废了,全部事情得从中间某个环节重来,这才叫恶梦。这时,与其顺着他们老哥胡说八道跑,不如找出合同来一条条地仔细颁下去。
- · 五类信用不良企业上网公示
- · 企业信用上网公示
- · 乌鲁木齐市首家公司制孵化器诞生
- · 网上工行装上安全门
- · 张五常为微软说几句话
- · 华为的冬天(任正非)
- · 软件项目管理(CMM)经验…
- · 也许我就是那个“微软的…
- · 软件公司创业完全手册[一…
- · Project2000如何帮您管理…
- · J2ME编程最佳实践之屏幕导航
- · J2ME编程最佳实践之灵活的RMS应用
- · J2ME程序开发新手入门九大要点
- · 在J2ME程序中实现字符串分割
- · 在J2ME程序中实现声音播放
- · J2ME编程中时间处理全攻略
- · J2ME程序开发中随机数字处理全攻略
- · 在J2ME手机编程中使用字体和颜色
- · 用J2ME编写手机短消息发送程序
- · 用简单的J2ME程序测试MIDlet生命周期
- · 微软.NET手持设备开发工具包…
- · 初识 Smart Device Extensi…
- · Smart Device Extensions 入…
- · .NET手持设备开发工具包实战…
- · WindowsCE.net 4.1仿真环境…
- · Win32开发中最易踏上的地雷
- · Windows编程中的映射模式和坐标转换
- · Win32程序函数调用时堆栈变化情况分析
- · WINDOWS数据类型
- · 注册ActiveX控件的几种方法
- · 托盘编程
- · 串行通信与重叠I/O
- · WINDOWS下的低级音频函数介绍
- · 用键盘钩子在Windows平台捕获键盘动作
- · 开发AS/400应用系统
- · 加强客户端约束增强数据库完…
- · DIRECTX 5游戏强力制作
- · 用DirectDraw编写动画程序
