`
copote-javacoder
  • 浏览: 35697 次
  • 性别: Icon_minigender_1
  • 来自: 长沙-北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于软件测试的一些感想

    博客分类:
  • java
阅读更多

        软件业的发展在中国走过了很多年了,对于软件的开发过程,有了许多的开发规范和开发流程。在软件开发的发展过程中,开发人员积累了大量的经验,同时,通过软件开发过程中出现的各种各样的问题经验的总结,产生了软件测试这个软件开发的伴随品。

        软件测试是为发现错误而执行的一个程序或者系统的过程,总的说来软件测试需要实现的目标包括:1、测试是为了证明程序有错,而不是证明程序无错误;2、发现在软件开发以及软件实施过程中没有发现的错误;3、对软件开发以及实施过程中没有发现的错误进行有效的测试。由此可见,软件测试对于软件开发的最终作用就是保证软件的质量。

        软件测试可以划分为三个阶段,第一个阶段是找出已经运行的或者正在开发的软件的bug,第二个阶段是除开找出软件中的bug外,对软件进行度量,明确把握对软件质量的度量,第三个阶段是提出对软件质量度量的标准,提高被测试软件的质量,这中间将软件测试作为一个工程来看待,也就是说测试也是一个开发过程。

        软件测试是软件开发过程中的一个重要的步骤,或者可以说软件测试应该是贯穿于软件开发过程的每一个阶段,以确保在软件开发的过程中,随时发现问题,方便软件开发人员及时进行修改。

        从软件的生命周期来看,如果仅仅是对程序进行测试,虽然被测试对象明确,测试的可操作性相对较强,但是在软件程序开发出来之前,整个软件开发过程中已经形成了明确的软件需求分析说明书、设计文档,如果在设计上就存在比较严重的错误,则测试的质量就难以保证,测试的价值就大大的降低了。因此,理想的测试方式则是按照软件工程各个阶段形成的结果,分别进行严格的审查。

1、    软件测试人员的组织

        为了保证软件的开发质量,软件测试应贯穿于软件定义与开发的整个过程。因此,对分析、设计和实现等各阶段所得到的结果,包括需求规格说明、设计规格说明及源程序都应进行软件测试。基于此,测试人员的组织也应是分阶段的。


        (1)软件的设计和实现都是基于需求分析规格说明进行的。需求分析规格说明是否完整、正确、清晰是软件开发成败的关键。为了保证需求定义的质量,应对其进行严格的审查。在需求分析阶段,测试小组人员包括系统分析员,软件开发管理者,软件设计、开发和测试人员和用户。

        (2)设计评审:软件设计是将软件需求转换成软件表示的过程。主要描绘出系统结构、详细的处理过程和数据库模式。按照需求的规格说明对系统结构的合理性、处理过程的正确性进行评价,同时利用关系数据库的规范化理论对数据库模式进行审查。这个阶段需要的软件测试人员相对较少,只需要系统分析员、软件设计人员、测试负责人员各一人即可。

        (3)程序的测试:软件测试是整个软件开发过程中交付用户使用前的最后阶段,是软件质量保证的关键。软件测试在这个阶段实施的是单元测试。这个阶段需要专门的测试负责人负责整个测试的计划、组织工作。测试人员组成由具有一定的分析、设计和编程经验的专业人员组成,人员人数依据项目的大小以及复杂度具体设定。

2、测试文件的组织

        软件测试文件描述要执行的软件测试及测试的结果。由于软件测试是一个很复杂的过程,同时也是设计软件开发其它一些阶段的工作,对于保证软件的质量和它的运行有着重要意义,必须把对它们的要求、过程及测试结果以正式的文件形式写出。测试文件的编写是测试工作规范化的一个组成部分。在设计阶段的一些设计方案也应在测试文件中得到反映,以利于设计的检验。测试文件对于测试阶段工作的指导与评价作用更是非常明显的。

        (1)测试文件的类型。根据测试文件所起的作用不同,通常把测试文件分成两类,即测试计划和测试分析报告。测试计划详细规定测试的要求,包括测试的目的和内容、方法和步骤,以及测试的准则等。由于要测试的内容可能涉及到软件的需求和软件的设计,因此必须及早开始测试计划的编写工作。不应在着手测试时,才开始考虑测试计划。通常,测试计划的编写从需求分析阶段开始,到软件设计阶段结束时完成。测试报告用来对测试结果的分析说明,经过测试后,证实了软件具有的能力,以及它的缺陷和限制,并给出评价的结论性意见,这些意见即是对软件质量的评价,又是决定该软件能否交付用户使用的依据。

        (2)测试文件的使用。在制定测试文件时,需要考虑如下的因素:

a、测试文件中规定了用以验证软件需求的测试条件用以弄清楚用户的需求;

b、测试计划不仅要用文件的形式把测试过程规定下来,还应说明测试工作必不可少的资源,进而检验这些资源是否可以得到,即它的可用性如何

c、弄清楚测试可以做什么,不能做什么。

d、生成测试用例。在测试文件编制过程中,测试用例的好坏决定着测试工作的效率。

e、评价测试结果。测试文件包括测试用例,即若干测试数据及对应的预期测试结果。完成测试后,把测试结果写入文件,这对分析测试的有效性,甚至整个软件的可用性提供了依据。
        (3)测试文件的编制
     在软件的需求分析阶段,就开始测试文件的编制工作,各种测试文件的编写应按一定的格式进行。

3、测试计划的制定       

        软件测试计划应该作为软件项目计划的一个子计划包括进去,在项目启动初期是必须规划的。一个好的测试计划可以使得测试是有计划的,是完整的,使得测试工作和整个开发工作有机结合起来,同时是的项目使用的资源和变更带来的项目风险是可控的。

        在软件测试当中,测试的每一个步骤都是独立的,测试计划可以对这些测试步骤起一个框架结构作用。测试计划应作为测试的起始步骤和重要环节,测试计划大致内容包括项目测试阶段的划分、软件测试时间的安排、软件测试方法的选择和软件测试工具的使用、软件基本情况的调研、测试的需求说明、测试记录、测试资源配置、问题分析跟踪报告、测试评审结果。

分享到:
评论

相关推荐

    软件测试培训感想

    在加入中国软件评测中心的培训课程之前,我对于软件测试的认识比较模糊,仅限于一些基本的概念,例如测试用例、bug报告等。但经过系统化的学习之后,我对软件测试的理解有了质的飞跃。培训课程不仅仅是对理论的讲解...

    软件测试课程感想

    软件测试课程感想 软件测试是软件开发过程中的一个非常重要的步骤,它可以确保软件的质量和可靠性。本文将对软件测试的基本概念、测试方法、测试流程和代码审查等方面进行详细的阐述。 一、软件测试的基本概念 ...

    软件测试课程总结感想.docx

    在信息化浪潮中,软件测试作为一门专业领域,其在保证软件质量方面的至关重要性不言而喻。而我,通过参加软件测试课程的学习,经历了从初步了解到深入探究的过程,不仅获得了丰富的理论知识,更重要的是,通过实践...

    软件测试小白三年感悟.docx

    【软件测试的基础知识】 软件测试是IT行业中一个关键的角色,主要负责确保软件产品的质量和功能的正确性。对于初入这个行业的人来说,理解基本的测试概念至关重要。软件测试工程师需要理解测试的目的,即找出软件中...

    软件性能测试之感想

    软件性能测试之感想软件测试对于性能测试,很多人不以为然!自然我们有时候也把会性能测试==会使用LoadRunner。诚然会使用LoadRunner是不错的,但性能测试不同我们常说的功能测试、界面测试。对于这类测试我们总可以...

    软件测试感想

    在开始学习嵌入式软件测试之前,我对于测试的认识比较浅显,基本局限于对基础编程语言(如C语言、C++)进行的一些简单调试工作。那时候,我将软件测试理解为找出程序中的错误,这种认知是片面和狭隘的。随着课程的...

    软件测试----个人体会小结

    软件测试----个人体会小结 软件测试----个人体会小结 软件测试----个人体会小结 软件测试----个人体会小结

    软件学院软件工程实践感想

    这个过程中,我积累了丰富的知识和实践经验,以下是我对软件工程的一些核心理解和感悟。 首先,软件工程并非单纯的技术活动,它涉及到项目管理、团队协作和沟通技巧。在实践中,我们学习了如何制定合理的项目计划,...

    软件测试用例编写工作技能

    ### 软件测试用例编写工作技能 在软件开发过程中,软件测试是确保产品质量的重要环节之一。良好的测试用例能够帮助测试工程师发现并定位软件中的缺陷,提高软件的稳定性和用户体验。本篇将根据“软件测试用例编写...

    软件测试 多种方法介绍 黑盒白盒

    ### 软件测试多种方法介绍:黑盒与白盒测试 #### 一、软件测试的概念与重要性 软件测试是指通过人工或自动化的方式运行软件系统的过程,旨在验证软件是否符合预定的需求,并找出预期结果与实际结果之间的差异。...

    TinyShop测试项目总结报告1

    1. 知识梳理 1.1 testlink 原理与操作流程 TestLink 是一个强大的测试管理和追踪工具,其主要目标是协助测试团队管理测试活动,从需求收集...通过这样的实践,团队成员提升了专业技能,对软件测试有了更全面的认识。

    软件工程感想软件工程感想

    软件工程的流程涵盖了多个关键环节,包括项目规划、需求分析、设计、编码、测试和维护。每个环节都至关重要,其中,需求分析是基础,决定了软件的方向;设计阶段则是软件的蓝图,决定着软件的结构和功能;编码是将...

    新项目中的小感想

    “工具”标签则可能意味着在项目中使用了特定的开发工具或软件,如版本控制工具、集成开发环境(IDE)、自动化构建工具等。 在实际项目开发中,源码的质量和管理是关键。良好的源码结构可以提高代码的可读性和可...

    三个人的测试部如何开展多项目测试工作[2]

    三个人的测试部如何开展多项目测试工作[2]软件测试个人感想:做为一个测试人员,碰上这样的情况后,应该多分析了解目前所测试的项目,包括项目背景,开发人员水平,公司对这个项目的关注态度,这个项目的客户需求等等...

    分享我对JS插件开发的一些感想和心得

    同时,这种实践过程对于提升个人技术能力,理解软件设计原则具有极大的价值。 总的来说,JS插件开发是一门艺术,需要在现成资源和自定义开发之间找到平衡。理解何时使用现有插件,何时自建解决方案,以及如何构建...

    Cadence学习感想.docx

    (四)通过逐步掌握Cadence中的一切仿真技术,为我从原有的EMC测试工作转向硬件的EMC设计整改工作奠定了良好的基础。 学习Cadence是硬件工程师必须具备的技能之一。只有通过刻苦的学习,加强对专业知识的熟练掌握,...

    一个程序员的面试感想

    4. **软件工程与敏捷开发**:理解软件开发的生命周期,包括需求分析、设计、编码、测试和维护。敏捷开发的理念,如Scrum或Kanban,也是现代软件开发的重要组成部分。 5. **系统设计与性能优化**:面试中可能涉及大...

Global site tag (gtag.js) - Google Analytics