一、软件测试的定义和目的
软件测试是根据软件的规格说明书和实际应用,设计一批测试案例,查找程序是否有存在错误,那么,软件测试的目的是发现尚未找到的错误。
二、程序员不要参于测试
程序开发人员已经习惯于自己的逻辑思维方法,下意识中避免了或绕开了其它逻辑判断的条件,程序当然不会出错。而测试人员可能有别于程序人员的逻辑思维,当两者的逻辑思维不相同时,所以在使用的时候随便去点击,点击一些东西的顺序,输入数据的内容都是随心所欲的,所以可能最与真实客户的思维模式一样,最有可以发现问题。
三、测试的原则
1)要把“尽早地不断地测试”作为测试的座右铭,
在写代码的前期就应该写好测试的案例。这样可以更避免掉好多麻烦
2)测试只能证明错误存在,而不能证明问题不存在;
因为测试案例你只能尽力去写,但是不可能考虑到全部
3)如果程序中查出的错误越多,则未查出的错误也越多。
正如在森林中,你在一小块地方就发现了几只狼,你想想在整个森林中狼会少吗
4)测试应当运用实际数据进行测试,而不是测试人员进行想象中的数据;
其实在开发的过程中,建好表以后,就应该录入真实的数据,也就是在整个代码开发的环节都用真实的数据
5)测试要细心,更要有无情的心;如要不细心,问题越后面越麻烦,一只老鼠坏了一锅好汤。换句话说,我们必须保证在做汤的每个环节都没有老鼠参与进来。如果在第一个环节发现有老鼠,其它的环节我们就没有必要进行了,重新开始第一环节的任务。
四、测试、质量、进度之间的关系
有人认为持久的测试和修改可以提高软件的开发质量。正如守门员一样,你在努力,你只能保证别人踢不进来,0:0是最好的结局。但是你没有办法保证你可以战胜对方。
其实软件开发的整个环节就和一个足球队一样,有守门员,有前锋,有后卫等等,任何一个环节出现问题都可以造成失败。没有办法说那个环节更重要一些。
正如有人要切你的一只手,让你选是左手和右手一样,
你的选择只能是,我一只也不会让你这个王八蛋切走的,每一只对我来都是很重要的
所以说软件的质量是每个环节努力的结果。而不是某个特定环节可以起的作用,所以每个环节都必须尽力,每个环节都是很重要的。
有人认为只要我的时间足够多,软件就会出现零错误。虽然多测试会发现并解决一些问题。但时间并不能解决全部的问题。一个稍微复杂一点的系统,无认通过什么样的手法,通过什么先进的测试理论来指导测试,想彻底消来错误,那是不可能的。君不同微软天天在发布软件升级包,是不是微软的技术不行,设计的测试案例不够多,还是测试的人数不多(全部上网的用户全部在帮他测试),这样算来微软的测试时间并不短,为什么还要天天升级,因为程序的错误是不可能预见式的消灭的。
那如何来平衡这测试和时间之间的关系呢,软件开发的成本以及程序所应用的领域等多个方面来进行综合考虑。对于一般的应用系统,界定一个相对的测试标准,告之程序开发人员和测试人员,让他们进行遵循其游戏规则,不要让程序员老觉得没有修改完错误,测试人员老是认为自己的测试进行得不够。这个游戏规则就是设计足够好而多的测试用例,让用户可以将程序运行起来。
毕竟,设计软件最终的目的是程序在基本满足要求的情况下,合法地获取尽可能多的利润。
同时对于软件开发人员,框架搭的灵活的,模块分的清晰一点,不至于牵一发,而动全身。
发现了问题并不要紧,只要能在用户可以容忍的时间内搞定就可以了,做人不要太有洁癖。
分享到:
相关推荐
3. 测试内容和执行情况:记录软件测试的实际执行情况,包括测试用例的执行结果、发现的缺陷和问题、测试数据和结果等内容。 在软件测试报告模板中,测试概要是最重要的一部分,它概括了软件测试的整体情况,包括...
《软件测试-基于问题驱动模式》是由朱少民教授主讲的一门专业课程,主要针对软件测试领域,尤其适合初入测试行业的新手以及有一定经验的高级工程师学习。本课程的核心理念是“问题驱动”,强调在测试过程中以问题为...
如果软件产品没有经过充分的测试,就有可能存在一些问题,影响软件的性能和用户体验。因此,软件测试非常重要。 三、软件测试的方法和技术 软件测试有多种方法和技术,如黑盒测试、白盒测试、灰盒测试、回归测试、...
本文将深入探讨在软件测试面试中常见的问题及答案,旨在帮助准备从事软件测试行业的朋友更好地理解和应对面试。 1. **软件测试理解**:软件测试是对软件产品进行系统性的检查,以发现其存在的错误、缺陷和漏洞,...
以下是一些常见的软件测试面试问题及其背后的深入知识点: 1. **什么是软件测试?** 软件测试是一种系统性的过程,用来评估软件产品的质量,确定其是否符合预定的需求和标准,找出并报告潜在的错误和缺陷。 2. **...
以下是一些可能出现在“软件测试面试题-收集了一些经典的软件测试面试题.zip”文件中的常见问题及其详细解答: 1. **什么是软件测试?** 软件测试是一种系统性的活动,旨在发现软件产品中的错误、缺陷或遗漏。它的...
8. 对一些 bug 存在较大争议:对一些 bug 存在较大争议是软件测试中非常常见的问题。Tester 应该明确什么样的问题是 bug,对于自己提交的 bug 要负责任,并与开发人员和测试组长进行沟通,来解决 bug 争议。 9. ...
下面我们将基于给定的软件测试简历,总结出一些重要的知识点。 测试专业知识 在软件测试简历中,金丽娟自我评价中提到了具备测试专业知识。这一点非常重要,因为软件测试需要具备专业知识和技能。测试专业知识包括...
软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试的目的有三方面:确认软件的质量、提供信息和保证整个软件开发过程的高质量。 软件质量是由几个...
下面我们将深入探讨软件测试的一些核心知识点。 1. **软件测试基础**:软件测试是验证和确认软件产品是否符合预定的需求和标准的过程。它包括功能测试、性能测试、兼容性测试、安全性测试等多个方面。 2. **测试...
除了上述软件测试相关的内容之外,给定文件还涉及到了一些IT基础知识,例如网络协议、操作系统、编程等方面的知识点,这里仅列举部分: - **网络知识**:IP地址、子网掩码、DNS、NAT等 - **操作系统**:进程与线程...
总结来说,《软件测试案例教程-吕云翔》是一门覆盖全面、实践性强的课程,不仅教授了软件测试的基本理论,还涵盖了白盒测试、黑盒测试等关键技术和各种测试工具的使用,旨在培养出能够有效检测和预防软件质量问题的...
【软件测试】是一个涵盖广泛领域的专业学科,旨在确保软件产品的质量、可靠性和性能。这份“免费的软件测试PPT”提供了对这一领域的基础介绍和实用示例,适合初学者和有经验的测试人员进行学习和参考。以下是PPT中...
在当今软件产业迅猛发展的背景下,软件测试作为保证产品品质不可或缺的一环,其重要性日益凸显。《软件测试基础教程》这本书籍提供了一个全面的平台,旨在帮助读者深入了解软件测试的各个方面,无论是手工测试还是...
此外,“软件测试总结”也会分享一些测试最佳实践,帮助读者在实际工作中更高效地执行测试工作。 “软件开发的科学和艺术之软件测试”则从一个更为宏观的视角来审视软件测试。在这本书中,测试不再被视为孤立的环节...
《软件测试实验报告——找零钱问题》详细分析 本次实验是关于软件测试的一个实践,主要目的是通过白盒测试方法来验证一个找零钱问题的C++程序的正确性。程序设计的目标是当顾客支付一定金额时,计算出找零的最佳...
在软件测试中,除了上述具体测试类型外,还有其他一些重要的方法和策略,例如: - 回归测试:当代码有修改或更新时,需要重新运行之前的测试用例,以确保未引入新的错误。 - 压力测试:评估软件在极端条件下的性能...
在软件开发过程中,软件测试是不可或缺的一环,它旨在确保产品的质量、稳定性和可靠性。...在实际操作中,可以加深对软件测试流程的理解,提高问题解决和分析能力,为未来的职业生涯打下坚实基础。
以下将详细阐述软件测试的一些关键知识点: 1. **测试基础**:理解测试的基本概念,如黑盒测试(关注功能行为)和白盒测试(关注代码结构),以及它们在实际工作中的应用。 2. **测试级别**:包括单元测试(针对...