Bug的类型

美国计算机科学家、图灵奖获得者詹姆斯·尼古拉·格雷(Jim Gray),在他的著名的论文“Why do computers stop and what can be done about it?”中首次提出了程序bug的类型,比如玻尔bug(Bohrbug)、 海森堡bug(Bohrbug)等用著名科学家名称命名的bug。后来又出现了更多的bug类型。现在,让我们来看看它们都是什么bug类型。 美国计算机科学家、图灵奖获得者詹姆斯·尼古拉·格雷(Jim Gray)

【软件测试】软件测试中容易忽略的缺陷

通常软件测试会暴露软件中的缺陷,经过修正后可以保证软件系统的功能满足需求并正确运行。但是,在系统测试和确认测试中,测试人员容易遗漏一些隐藏的缺陷。众所周知,软件测试不可能发现所有的缺陷,而软件开发周期各个阶段仍然存在注入缺陷的可能,但是,有一些缺陷是测试中容易忽略的,也就是说,通过测试方法和用例可以充分暴露这些缺陷,遗憾的是,它们往往被忽略或者某种原因忘记测试了,这就给软件留下了隐患或者危机。这些容易被忽略的缺陷包括: 1、安装缺陷 通常项目组完成代码后,发布时候安装打包是最后一个环节,而软件测试人员通常在测试的时候,没有仔细的测试这一部分,而把用例集中在其他功能上。安装时候的缺陷通常通过拷贝 […]

功能测试中故障模型的建立

故障模型是将测试人员的经验和直觉尽量归纳和固化,使得可以重复使用。测试人员通过理解软件在做什么,来猜测可能出错的地方,并应用故障模型有目的地使它暴露缺陷。下面介绍功能测试中故障模型的建立。 1. 概述 故障模型是软件测试的基础,也是一个判断测试方法是否成熟的重要标志。在测试的过程中,要确保每一个目标状态都被测试,那么测试必须是系统的;为了最终定位软件缺陷,所以测试必须是集中的;测试需要使用大量的测试用例和重复性测试,因此测试必须是自动的。若要满足上述三个测试条件,我们必须建立故障模型。 故障模型是将测试人员的经验和直觉尽量归纳和固化,使得可以重复使用。测试人员通过理解软件在做什么,来猜测可能出 […]

【软件测试】话说软件测试中的“易用性”测试

Usability的概念在中国开始逐渐为企业所认识,但是作为这个领域的核心词汇,usability的中文翻译仍未统一。目前存在着两个主流版本:“可用性”和“易用性”。这两个译法虽然只有一字之差,但它们所传达的含义却大相径庭。对这两者的取舍已经不仅仅是哪个更好一点的锦上添花的问题,而是哪个对哪个错的是非原则问题。“易用性”的使用对于正确理解usability具有极大的片面性和误导性,非常不利于其在中国的开展。

【软件测试】场景法设计测试用例

概念和定义 不完全、不彻底是软件测试的致命缺陷,任何程序只能进行少量而有限的测试。测试用例在此情况下产生,同时它也是软件测试系统化、工程化的产物。而测试用例的设计一直是软件测试工作的重点和难点,那么 什么是测试用例? 为达到最佳的测试效果或高效的揭露隐藏的错误而精心设计的少量测试数据,称之为测试用例。 我们不可能进行穷举测试,为了节省时间和资源、提高测试效率,必须要从数量极大的可用测试数据中精心挑选出具有代表性或特殊性的测试数据来进行测试。 怎样的用例算是好用例? 一个好的测试用例是在于它能发现至今未发现的错误。

【其他资料】软件测试领域中的10个生存和发展技巧

这些建议不仅使你幸存下来,而且也能推动你在软件测试职业生涯的发展。确保遵循这些建议: 建议 1)书面沟通-在许多场合我反复说书面沟通,保持所有东西要进行书面沟通。请不要口头信息交流。这适用于你的上级给你的所有指令或任务。无论你的领导或经理多么友善,但请进行电子邮件或文件进行沟通。 建议 2)尽量使日常工作能够自动化尝试自动化每天的例行工作-不管多么小的工作,通过自动化日常的例行任务来节省时间和精力例如,如果你手动进行每日项目构建,可以写一个批处理脚本通过一次点击执行这些任务。

【软件测试】易用性List

考察评定软件的易学易用性,各个功能是否易于完成,软件界面是否友好等方面进行测试,这点在很多类型的管理类软件中是非常重要的。 对于易用性测试可遵循以下原则: 完成相同或相近功能的按钮用Frame.框起来,常用按钮要支持快捷方式。 完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。 按功能将界面划分局域块,用Frame.框起来,并要有功能说明或标题。 界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。 界面上首先应输入的信息和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。 同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。 分页界 […]

【软件测试】十大负面测试(Negative testing)用例

负面测试(Negative testing)是相对于正面测试(Positive testing)而言的。它们也是测试设计时的两个非常重要的划分。简单点说,正面测试就是测试系统是否完成了它应该完成的工作;而负面测试就是测试系统是否不执行它不应该完成的操作。形象一点,正面测试就象一个毕恭毕敬的小学生,老师叫我做什么,我就做什么;而负面测试就象一个调皮捣蛋的孩子,你叫我这样做,我偏不这样做,而且和你对着干。开发人员也是最讨厌修改此类bug的。 正面测试主要根据需求,功能说明书,设计文档等相关参考文档来执行测试,而负面测试则主要根据错误猜测,逆向思维来测试系统,一定程序上的的依赖测试人员的经验积累。 […]

【软件测试】软件测试管理经验谈

某甲问道:「测试做太多的话,会不会使得bug解不完?」 某乙回答:「还不简单。只要不做测试,就没有bug。」 上述对话,反应出许多软件工作人员对于测试的想法。对多数软件开发人员而言,测试大概是仅次于维护之外,最令人讨厌的工作。对软件研发主管来说,测试是必要之恶:做得不够后患无穷,做得过多又增加成本,延误商机。因此,如何能够规画与执行一个最经济有效的测试工作,当是软件研发主管们须研究的一个课题。

【软件测试】软件测试的心理学问题

1、程序测试的过程具有破坏性 人类的活动具有高度的目的性,建立适当的目标具有重要的心理作用。如果我们的目的是要证明程序中没有错误,那我们就会不自觉地朝这个方向去做;也就是说,我们会倾向于挑选那些使程序出错的可能性较小的测试数据。另一方面,如果我们的目标是要证明程序中有错,那就会选择一些易于发现程序所含错误的测试数据。而后一种态度会比前者给程序增添更多的价值。

【软件测试】软件测试的常识

作者:张华 软件开发和使用的历史已经留给了我们很多由于软件缺陷而导致的巨大财力、物力损失的经验教训。这些经验教训迫使我们这些测试工程师们必须采取强有力的检测措施来检测未发现的隐藏的软件缺陷。 生产软件的最终目的是为了满足客户需求,我们以客户需求作为评判软件质量的标准,认为软件缺陷( Software Bug )的具体含义包括下面几个因素: a 软件未达到客户需求的功能和性能; b 软件超出客户需求的范围; c 软件出现客户需求不能容忍的错误; d 软件的使用未能符合客户的习惯和工作环境。

【软件测试】如何更好地与开发人员沟通

作为测试工程师,在日常工作中接触最多的当然是团队中的开发工程师,如何和开发工程师进行有效的交流是测试工程师面对的 重要问题。一般来说,在一个团队中,总是有开发人员喜欢和不喜欢的测试工程师,这两者之间的工作效率和效果都有很大的差异。当然,不能武断地说测试人员不 喜欢的测试工程师就一定是效率低下的测试工程师,或者说是不合格的测试工程师,但一般来说,那些容易得到开发人员认可的工程师在测试时总能够更好地发现缺陷和敦促开发人员解决缺陷。 测试工程师和开发工程师承担的是开发工作的两个不同方面,说得极端一点,一个是创建,一个是破坏,虽然两者的 最终目的都是一样的,但在达成目标的方式上却有很大的差异。因此,在 […]

【软件测试】如何编写测试用例

随着中国软件业的日益壮大和逐步走向成熟,软件测试也在不断发展。从最初的由软件编程人员兼职测试到软件公司组建独立专职测试部门。测试工作也从简单测试演变为包括:编制测试计划、编写测试用例、准备测试数据、编写测试脚本、实施测试、测试评估等多项内容的正规测试。测试方式则由单纯手工测试发展为手工、自动兼之,并有向第三方专业测试公司发展的趋势。

【软件测试】用户名密码测试List

别小看了这个用户名密码这么简单的输入框。可测试的内容还是很多的,并且引发的问题也有很多种类。下面就说一说他的测试方法。 一、用户注册 只从用户名和密码角度写了几个要考虑的测试点,如果需求中明确规定了安全问题,Email,出生日期,地址,性别等等一系列的格式和字符要求,那就都要写用例测了~

【软件测试】如何编写测试用例

随着中国软件业的日益壮大和逐步走向成熟,软件测试也在不断发展。从最初的由软件编程人员兼职测试到软件公司组建独立专职测试部门。测试工作也从简单测试演变为包括:编制测试计划、编写测试用例、准备测试数据、编写测试脚本、实施测试、测试评估等多项内容的正规测试。测试方式则由单纯手工测试发展为手工、自动兼之,并有向第三方专业测试公司发展的趋势。