文档介绍:工程硕士学位论文选题报告
及论文工作计划
课题名称基于Web的软件测试自动化的研究
姓名
专业领域软件工程
所在院、系软件学院
校内导师
校外导师
选题时间 2004 年 2 月 6 日
同济大学研究生院
200 4 年 3 月 6 日
一、立论依据
课题来源、选题依据和背景情况、课题研究目的、工程应用价值
随着软、硬件技术的发展,计算机的应用领域越来越广,而其中软件的功能也越来越强大,软件也越来越复杂。这就使保证软件的质量,保证软件的高度可靠性,面临巨大的挑战。特别是诸如军事、航空航天、通讯、交通医疗等行业,软件的微小瑕疵就可能造成对生命安全、天文数字的巨额财产、甚至对国家安全严重威胁。
因此对软件产品质量的度量、评估和保证,是软件开发中非常重要的问题。基于这些原因,国际上的标准化和认证组织已经制定了一些软件标准。对于软件的开发过程即可通过这些标准进行约束和度量。
/的快速增长,Web已经对商业、工业、银行、财政、教育、政府和娱乐及我们的工作和生活产生了深远的影响。许多传统的信息和数据库系统正在被移植到互联网上,电子商务迅速增长,早已超过了国界。范围广泛的、复杂的分布式应用正在Web环境中出现。Web的流行和无所不在,是因为它能提供支持所有类型内容连接的信息发布,容易为最终用户存取。
在基于Web的系统开发中,如果缺乏严格的过程,我们在开发、发布、实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大。而且,随着基于Web的系统变得越来越复杂,一个项目的失败将可能导致很多问题。当这种情况发生时,的信心可能会无法挽救地动摇,从而引起Web危机。并且,Web危机可能会比软件开发人员所面对的软件危机更加严重、更加广泛。
在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。基于Web的测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。然而,和Web媒体的不可预见性使测试基于Web的系统变得困难。因此,我们必须为测试和评估复杂的基于Web的系统研究新的方法和技术。
而自动化测试就是希望能通过自动化测试工具或其他手段,按照测试工程师的预定计划进行自动的测试,目的是减轻手工测试的劳动量,从而达到提高软件质量的目的。自动化测试的目的在于发现老缺陷。而手工测试的目的在于发现新缺陷。自动化测试涉及到测试流程、测试体系、自动化编译、持续集成、自动发布测试系统以及自动化测试等方面的整合。也就是说让测试能够自动花,不仅是技术、工具的问题,也是一个公司和组织的文化问题。首先公司要在资金、管理上支持,其次要有专门的测试团队去建立适合自动化测试的测试流程、测试体系;其次就是要把源代码从受控库中取出、编译、集成、发布可运行系统、进行自动化的单元测试和自动化的功能测试的过程。
自动化测试可以减少或消除一些手工测试中的重复和烦琐,节约测试所必需的时间和提高测试的一致性和可重复性。自动化测试可以提高产品质量并尽可能在软件生命周期的早期发现缺陷。
并非任何测试自动化都可以起到预期效果,只有好的自动化测试体系才能扬长避短,达到建立自动化测试体系的初衷,在