随笔分类 - 测试软件及文档
测试软件及文档
摘要:项目的开发风险来自于对需求的误解,来自于设计与开发过程及产品的缺陷,只有尽早发现这些缺陷,才能降低并控制项目风险。基于这种思想,软件业出现了一些新的测试思路,主要有二: 1、测试驱动开发(Test-Driven Development,简称TDD)。这种测试思想被最近流行的XP(Extreme Programming)极限编程方式所大力提倡。它的基本思想是,通过测试来为编程做指导,在某...
阅读全文
摘要:随着信息技术在国内不同行业应用的开展,人们已经不再怀疑软件对于社会运转的巨大作用。但是,随着人们对软件作用期望值的提高,已经有越来越多人将关注点转移到软件的可靠性上,因此,国内软件测试公司或测评中心如雨后春笋般出现。 软件测试并非万能药 我们在进行软件测试市场开发的过程中,发现了这样的一个问题:不少企业认为软件测试确实很重要,于是提出:我将执行程序(或者还有没有写完整的用户手册)给你,你给我测吧(...
阅读全文
摘要:软件测试工程师是软件行业中一种即年轻又古老的职业,进入二十一世纪以来,随着中国加入WTO以后,从事这项职业的人也越来越多。一个公司在组建一个测试队伍的时候如何分配人员结构,从而使公司软件测试工作水平得到提高,是大家比较关注的问题。本人依照自己的经验提出自己的观点: 我们首先来看一下测试人员的纵向结构 1,测试经理 测试经理主要负责测试队伍的内部管理以及与其他外部人员,客户的交流,详细说...
阅读全文
摘要:软件项目开发是个分工明确的系统工程,不同的人员扮演了不同的角色,包括部门经理、产品经理、项目经理、系统分析师、程序员、测试工程师、质量保证人员等。可见,软件测试工程师只是软件项目开发中的一个角色而已。 戏剧舞台上的生、旦、丑是不同的角色,其表演方式具有明显的特征,这是由于角色决定的。同样,软件测试工程师的角色,在软件项目开发中也存在如何定位和表现自身的行为和责任的问题。 此处讨论测试工程师的角色并...
阅读全文
摘要:我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆, CMM 是什么就更加不知道了。那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高技能,对于那些拿着螺丝刀安装机器的人就认为是宇内超级高手,身具杀人于无形之绝世秘技。拿破仑说不想当将军的士兵不是好士兵,我最初的梦想就是想成为软件测试的高手,傲视天下。所以不断偷师,总结经验,自认为掌...
阅读全文
摘要:一、背景 我从毕业到现在, 曾在大小不同的三个公司就职: 有民营的、有外资的、也有上市公司。 但以前大多都是做项目,从事软件开发工作,绝大部分公司对测试都不重视,即使有也没有成规模, 更谈不上建立测试体系。总之,重开发轻测试的管理思想在中国延续了几十年、并且还要继续,看看他们给测试工程师开的低工资和老师在课堂上讲到测试时一笔带过就知道测试被中国的老板所忽略。 最近两年,我从事CRM软件产品的测试、...
阅读全文
摘要:公司来来回回用了5个测试了,至今我没有发现测试存在的经济价值---除了让程序员更懒以外 所以最近公司的测试我们都请走了,让程序员的收入和质量直接挂钩,不知道这样是不是好些 看看国外,不知道人家是怎么做的 【内容提要】随着全球软件外包的兴起,测试外包成为新的外包业务。由于外包测试仍然处于起步阶段,因此,客户对于外包测试的质量和管理都处于探索阶段,因此客户对现场测试的需求旺盛。笔者认为现场测试只是外包...
阅读全文
摘要:Unit testing(单元测试),指一段代码的基本测试,其实际大小是未定的,通常是一个函数或子程序,一般由开发者执行。 Integration testing(集成测试),被测试系统的所有组件都集成在一起,找出被测试系统组件之间关系和接口中的错误。该测试一般在单元测试之后进行。 Acceptance testing(验收测试),系统开发生命周期方法论的一个阶段,这时相关的用户和/或独立测试人员...
阅读全文
摘要:软件测试的几个基本概念 一.软件测试的目的 软件测试的目的在于发现程序中存在的错误,而不是证明程序无错误。一个好的测试用例在于它能发现至今尚未发现的错误。一个成功的测试则是发现了至今未发现的错误。开始我们认为做测试无非是为了证明我们编的程序是无错误的,那是大错特错了。因为bug会因时间不同,条件不同而出现。永远无法证明我们的程序是绝对正确的。 二.Bug存在的原因 1)开发人...
阅读全文
摘要:人们常常以为,开发一个程序是困难的,测试一个程序则比较容易。这其实是误解。设计测试用例是一项细致并需要高度技巧的工作,稍有不慎就会顾此失彼,发生不应有的疏漏。 不论是黑盒测试方法还是白盒测试方法,由于测试情况数量巨大,都不可能进行彻底的测试。所谓彻底测试,就是让被测程序在一切可能的输入情况下全部执行一遍。通常也称这种测试为“穷举测试”。 “黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试...
阅读全文
摘要:软件测试是对创造力和智力非常有挑战性的任务。测试一个大型软件需要的智能要超过设计这个程序的智能。软件在它发行之前应当通过彻底的测试,以保证它的可靠性和功能性,不幸的是,测试工程师要覆盖一个大型程序的所有情况会感到太麻烦和太费时。确实,软件的每个部分如能被分别测试到,同时一些指定的路径也能被测试,这对总的软件质量的保障是非常有效的。 一般的说,没有测试覆盖分析工具,软件在发行前仅有50%的源程...
阅读全文
摘要:因为软件测试的工作量很大(40% 到60% 的总开发时间),而又有很大部分适于自动化,因此,测试的改进会对整个开发工作的质量、成本和周期带来非常显著的效果。 首先,谈谈在测试自动化的情况下,带有图形界面的产品的测试用例的设计问题。因为图形界面的输出显示不是很容易做到测试结果自动化比较,所以一般的做法是把图形界面输出的部分单独建立测试用例,以手工运行。而所有非图形输出则可进行自动测试。 ...
阅读全文
摘要:软件测试的主要目的在于发现软件存在的错误(Bug),对于如何处理测试中发现的错误,将直接影响到测试的效果。只有正确、迅速、准确地处理这些错误,才能消除软件错误,保证要发布的软件符合需求设计的目标。在实际软件测试过程中,对于每个Bug都要经过测试、确认、修复、验证等的管理过程,这是软件测试的重要环节。 错误跟踪管理系统 为了正确跟踪每个软件错误的处理过程,通常将软件测试发现的每个错误...
阅读全文
摘要:性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样。中国软件评测中心将性能测试概括为三个方面:应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试。通常情况下,三方面有效、合理的结合,可以达到对系统性能全面的分析和瓶颈的预测。 应用在客户端性能的测试 应用在客户端性能测试的目的是考察客户端应用的性能,测试的入口是客户端。它主要包括并发性能测试、...
阅读全文
摘要:前段时间和几个测试朋友聊天,说到06年上半年测试界的新闻,我想最大新闻莫过于智联招聘网站的一个测试行业的调查报告吧。 该报告指出“目前测试从业人员不会超过5万,合格的测试人员不会超过3万,而工作超过5年的更不会超过1万”,姑且不说数据是否准确(据我经验,应该八九不离十)。单在这里说说怎样才算是一个合格的测试工程师,怎么才能成为一个合格的测试工程师。 首先说说怎样才算是一个合格的测试工程师。 一个测...
阅读全文
摘要:干测试也有一年多了,偶尔也会静下心来思考一些问题,但很多思考的结果都似灵光一现——过后就忘掉了,实在可惜,以后就记在这里吧。 技术类思考 软件工程的任何一个部分——从需求分析、架构设计到最后的Debug——都能引入Bug,有时候是单个引入,而有时候则是一窝一窝地引入。所以,优秀的测试员理应掌握丰富的软件工程知识。很难想象一个不懂材料力学和结构力学的工程师能够验收刚刚建好的大厦。 ...
阅读全文
摘要:没有经验,不知如何跻身于测试工程师的行列?以下几个基本方向能使你从新手成为软件测试的行家里手。 软件工业是自动化工业的一部分。而且是最活跃发展最迅速的一个方面。到底有多迅速?任何人的想像力都不够!正如我们不会把我们的事务托付给不可靠的经纪,任何有分量的公司都不会采用没有质量保障的软件。软件测试人员,我是说有水平有经验的软件测试人员永远是供不应求的。软件测试经理不得不花很多的时间去面试有潜力的应聘者...
阅读全文
摘要:随着市场对软件质量的不断提高,软件测试不断受到重视,但是由于总体上,国内软件项目过程不规范,导致重视编码和轻视测试的现象,对于软件测试的重要性、测试方法和流程等还存在很多错误的认识。根据作者的软件工作经验,本文列举了七种有代表性的软件测试得认识误区,并作了剖析和相应的解释。希望对软件行业的技术和管理人士,正确认识软件测试起到一定的作用。 作为软件质量保证和可靠性的关键技术手段,软件测试正日益受到...
阅读全文
摘要:一. 方法简介 1.定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 2.因果图法产生的背景: 等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。 如果在测试时必须考虑输入条件的...
阅读全文
摘要:一. 方法简介 1.定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 2.因果图法产生的背景: 等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。 如果在测试时必须考虑输入条件的...
阅读全文