用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计安卓Android毕业设计

基于Selenium的自动化测试系统设计与实现

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

 近些年来,网络技术不断发展,互联网在全球范围内迅速普及,web 应用也逐渐普及起来,它已经成为人们生活中不可或缺的一部分。已经涉及金融、医疗、娱乐、购物等各个方面,给人们的生活带来了极大的便利。同时,人们的关注点也从方便易用、美观简洁逐渐向安全、稳定、可靠转移。这给软件测试提出了更高的要求。同时,web 应用有着数据量大、产品迭代快速、需要频繁的回归测试等特点,传统的软件测试并不完全符合 web 测试的要求,这也大大增加了软件测试的难度。所以,引进 web 自动化测试是很有必要的。web 自动化测试可以代替测试人员完成大量重复、复杂、枯燥的测试,保证程序的正确性与可靠性,提高测试效率,保证项目进度。
本文设计与实现了适用于“去哪儿”网度假版块的自动化测试框架,用于网站开发中大量的回归测试与迭代测试,保证测试进度,减轻测试人员负担。同时,根据完成的自动化测试框架,开发自动化测试脚本,实现部分测试用例的自动化,完成自动化测试的任务。
本人的主要工作如下:
1.分析“去哪儿”网度假版块特点、功能及测试人员对编写测试用例提出的要求,总结出自动化测试框架的需求分析。
2.通过分析需求分析,选择适合待测网站的开发语言和自动化测试工具。
3.参与设计了自动化测试框架的整体架构。框架整体分为 config 层、monitor 层、case层和 util 层。使用 controller.py 文件来控制整个测试过程,执行测试用例,获得测试的结果和日志。
4.根据自动化测试框架的需求分析与整体架构设计,参与实现了自动化测试框架,实现了部分功能。
5.根据手动测试的测试用例,完成自动化测试用例的编写,实现 web 测试的自动化。最终经过几个月的设计与开发,完成了适用于“去哪儿”网度假版块的自动化测试
框架,并完成了部分手动测试用例的脚本化,实现了网站的自动化测试。在自动化测试实施后,实现了节约测试的成本、减轻测试人员的负担、保证项目的进度与正确性的目标。


关键词:自动化测试;selenium;自动化测试脚本


ABSTRACT

ABSTRACT:
In recent years, with the continuous development of network technology and the rapid popularization of Internet in the global scope, Web applications has become an indispensable part of people's life. It has been involved in financial, medical, entertainment, shopping and many other aspects, has brought great convenience to people's life. At the same time, people's attention is also from the convenient and easy to use, beautiful and simple gradually to the safe, stable and reliable transfer. This has put forward higher requirements for software testing. At the same time, the Web application has a large amount of data and the need of rapid iteration, frequent regression testing, etc, the traditional software testing is not completely accord with the requirement of Web testing, which greatly increased the difficulty of software testing. So, the introduction of Web test automation, it is very necessary. Web automation test can replace the tester with repetitive, complicated and boring test, guarantee the correctness and reliability of the procedure and improve the test efficiency, guarantee the project schedule.
This paper designs and implements an automated testing framework, which is suitable for the ‘qunar’ website’s vacation section. It is used for a lot of regression testing and iterative testing in website development, to ensure the progress of testing and to reduce the burden of testing personnel. At the same time, according to complete the automated testing framework, develop automated test scripts, and realize the automation of part of the test cases, to complete the automated testing tasks.
My main work is as follows:
1.Analysis "qunar" website’s holiday section characteristics, functions and the tester needs to write a test case, sums up the requirements analysis of test automation framework.
2.Combined with the demand analysis, select the appropriate Web test automation tool and the development language.
3.Participated in the design of the overall architecture of the test automation framework. Framework as a whole is divided into the config layer, monitor layer, and case layer and util layer. Through the controller files to connect the whole test process, perform the test script, test results and log.
4.According to the test automation framework of requirements analysis and the overall


architecture design, participate in the writing of the test automation framework code, can realize the function part.
5.According to the test case of manual test, write the test script, and realize the automation of the Web test.
Finally after several months of design and development, the completion of the applicable to "to where" net holiday plate of automated testing framework, and completed part of the manual test case scripts, realize the automation of the test site. In the use of the process, saving the cost of testing, reducing the burden of testing personnel, to ensure the progress of the project and the right.


KEYWORDS:automation; Selenium; Automated test scripts


目 录
中文摘要 I
ABSTRACT II
目 录 IV
1引言 1
1.1 研究背景 ............................................................ 1
1.2 国内外研究现状 ...................................................... 2
1.3 主要研究工作 ........................................................ 3
1.4 论文结构 ............................................................ 4
2自动化测试相关理论技术介绍 5
2.1 自动化测试概述 ...................................................... 5
2.1.1 自动化测试的意义 ................................................ 5
2.1.2 自动化测试的引入条件 ............................................ 6
2.1.3 自动化测试的过程 ................................................ 6
2.2 WEB 自动化测试概述 ................................................... 7
2.2.1 Web 应用特点 ..................................................... 7
2.2.2 Web 应用系统测试内容 ............................................. 8
2.3 SELENIUM 自动化测试工具介绍 ........................................... 9
2.3.1 Selenium 测试工具的组件 .......................................... 9
2.3.2 Selenium 测试工具的优点 ......................................... 10
2.4 本章小结 ........................................................... 10
3自动化测试框架的分析与设计 11
3.1 需求分析 ........................................................... 11
3.1.1 待测网站分析 ................................................... 11
3.1.2 测试人员对自动化测试的要求 ..................................... 12
3.1.3 自动化测试框架的功能设计 ....................................... 12
3.2 整体设计 ........................................................... 13
3.2.1 case 模块设计 ................................................... 14
3.2.2 monitor 模块设计 ................................................ 15
3.2.3 config 模块设计 ................................................. 15
3.2.4 util 模块设计 ................................................... 16
3.3 本章小结 ........................................................... 17
4自动化测试框架的实现与实施 18
4.1 自动化测试框架的实现 ............................................... 18
4.1.1 case 模块的实现 ................................................. 18
4.1.2 monitor 模块的实现 .............................................. 21


4.1.3 config 模块的实现 ............................................... 22
4.1.4 util 模块的实现 ................................................. 25
4.2 自动化测试框架的实施 ............................................... 28
4.2.1 自动化测试环境的搭建 ........................................... 28
4.2.2 自动化测试框架的安装 ........................................... 29
4.2.3 文件结构说明 ................................................... 31
4.2.4 自动化测试脚本编写 ............................................. 31
4.2.5 自动化测试脚本的运行 ........................................... 33
4.2.6 查看运行结果 ................................................... 36
4.3 本章小结 ........................................................... 39
5总结与展望 40
5.1 论文内容总结 ....................................................... 40
5.2 未来工作展望 ....................................................... 40
参考文献 42
致 谢 43
附 录 44

1 引言

1.1研究背景

近些年来,网络技术不断发展,互联网也逐渐普及,使得 Web 应用程序的复杂度大大地提高了。传统的 C/S 架构开发周期过长、需要单独开发客户端、无法提供分布式服务,已经无法适应当今 Web 应用的分布、异构、并发和平台无关等特性,于是 B/S结构应运而生。B/S 架构,即浏览器/服务器结构,是伴随着网络技术的兴起而出现的一种新型的体系结构,它是对 C/S 架构的一种改进。B/S 架构的最大特点是:用户仅需要利用浏览器,就可获取不同平台、不同服务器上的文字、数字、图像、音频、视频等数据。浏览器可以向服务器发送数据请求,服务器仅需返回浏览器所请求的数据,浏览器接收数据后,根据特定规则进行显示即可,无需开发特定的客户端。而服务器和数据库服务器可以处于相同服务器中,可以处于不同服务器中,当服务器需要操作数据时,可以再向数据库服务器发送请求进行获取,这样放置服务器可以提供分布式服务,使得
Web 应用的使用范围越来越广。在新型结构和网络技术不断发展的推动下,Web 应用程序也涉及到人们生活的方方面面,从金融、医疗到衣食住行,Web 应用程序成为了我们生活中必不可少的一部分。同时,由于测试 Web 应用的方法和测试传统的软件有一定区别,也对测试人员提出了新的要求,要求测试人员在产品的快速迭代中,尽可能快速地完成新功能的测试与回归测试,同时保证测试的准确性与正确性。虽然传统的软件测试技术(例如白盒测试、黑盒测试)和方法仍然可以运用到测试过程当中,但是已经不是完全适用,难以保证当今 Web 应用的测试的质量和效率。
目前,Web 应用的验收通常是通过测试人员进行手工测试来检测系统是否存在问题和符合预期效果,然而手工测试速度缓慢,不能保证测试进度,而且需要耗费大量的人力物力。而且由于产品快速的迭代,会经常进行回归测试,这种枯燥乏味的回归测试会影响测试人员的态度,从而影响测试的进度和正确性。更重要的是,测试人员不可能进行每次都完全相同的回归测试,会因为人为失误导致结果不同,影响测试的进度和产品质量。而且手工测试难以模拟多用户并发访问来进行性能测试,会受开发周期、开发成本等其他原因限制而导致无法进行全面的测试。总而言之,仅通过手工测试不能保证
Web 应用程序的质量和工作进度。因此,引入自动化测试来降低测试人员压力,提高测试的效率是十分有必要的。
近些年来,自动化测试技术逐渐成熟,出现了大量功能强大的自动化测试工具,测试人员也逐渐开始使用自动化测试来替代传统的手工测试。最初的自动化测试只是使用


具有录制、回放功能的测试工具来进行测试,仅是模拟手工测试。然而随着自动化测试技术的不断成熟,出现了数据驱动测试、关键字驱动测试等新型的自动化测试技术,自动化测试逐渐变得更加容易使用,功能也更加强大。因此使用自动化测试来进行 Web应用程序的测试逐渐变得流行起来。
综上所述,学习、研究自动化测试技术,搭建符合公司产品特点的自动化测试框架来保证测试进度,提高工作效率,确保项目的质量,是十分有必要的。

1.2国内外研究现状

到目前为止,软件工程已经发展了 50 余年,取得了巨大的成就,软件已经涉及人们生活的方方面面,成为生活中必不可少的一部分。软件测试作为保证软件工程质量的手段,也随着软件工程的发展而逐渐被人们重视,成为了软件工程中必不可少的一部分。软件测试大概经历的如下发展阶段:
第一阶段:早期时代(60 年代中期之前)程序设计阶段,程序规模小,编写者和使用者为同一个人(同组人),软件程序的成功与否主要取决于程序设计的当事人。此时软件测试还处于萌芽状态,测试只为了证明程序能够正确运行。
第二阶段:软件程序系统阶段,60 年代中期到 70 年代中期。出现了软件作坊,产生了软件危机。美国预计在 2005 年基本结束该阶段。我国才正处于该阶段的发展阶段。在此阶段软件测试脱颖而出,成为一种必然,软件测试方法的出现,在某种程度上缓解了“软件危机”。软件测试和其他行业的质检的本质性的区别。
第三阶段:软件工程阶段,70 年代中后期。软件的发展过程系统化、工程化,软件的复用将使软件走上工业化(美国已经在 1995 年走上了工业化的道路)。
然而随着信息技术的不断成熟和互联网普及度的提高,Web 应用程序逐渐取代了传统软件的地位,成为了主流的应用程序。然而区别于传统软件,Web 应用程序的开发为快速地迭代开发,会频繁发布新版本。这会导致测试人员需要频繁地进行回归测试,来检查新版本是否会影响到系统原有的功能,这一部分工作十分繁重,而且经常重复这些枯燥的回归测试会影响测试人员的心态,造成测试的疏忽从而导致项目出现问题。为了解决这些问题,让项目可以保质保量的完成,引进自动化测试是很有必要的。
自动化测试经过了多年的发展,到现在已经成为了一个比较成熟的技术,自动化测试的发展大概经历了以下三个阶段:
第一代自动化测试,是在自动化测试思想刚开始时,一种传统的“录制-回放”技术,它与现在的“录制-回放”功能不同,仅仅是一个模拟测试人员操作软件的过程,它会记录操作人员对鼠标和键盘的操作并进行记录,再运行测试时,会重复这些操作,达到自动化测试的目的。这种自动化测试修改方式仅能为测试人员手工重新录制,不能


适应软件的变化,因此不可能进行大规模使用。
第二代自动化测试,即脚本化的自动化测试,使用自动化测试脚本进行测试,可以对程序接口进行测试,而不是简单地模拟人为操作,在这里开始集成了模块化与库思想。
第三代自动化测试,技术逐渐成熟,出现了很多新型的测试方法,包括数据驱动测试与关键字驱动测试。伴随着技术的不断成熟,市面上也出现了很多自动化测试工具,包括 QTP、LoadRunner 等一部分广泛使用的自动化测试工具。从这时候起,人们逐渐重视自动化测试在软件工程中的地位,自动化测试开始被大规模使用。
国际上,对软件测试是十分重视的,很多公司投入大量精力去进行软件测试。很多大型软件开发公司中,例如 IBM 和 Microsoft,很多重要项目的开发测试人员的比例能够达到 1:2 甚至 1:4。在软件测试技术方面,自动化测试系统逐渐成熟,变得易用、易于拓展、跨平台、可进行分布式测试。目前,市面上很多顶尖的自动化测试工具均是国外的公司推出的。比如惠普公司的 QTP 测试软件,它主要用来进行回归测试等需要大量重复的测试,并且可利用数据驱动、关键字驱动等思想进行脚本维护,提高了测试效率。又如 Mercury Interactive 公司的 WinRunner 自动化测试工具,它是一种主要负责功能测试的企业级测试工具,可以保证软件质量,保证软件长时间稳定的运行。我国大部分使用的自动化测试工具均为国外公司所开发。
我国的软件行业起步较晚,相较于国外还有很长的一段路需要走。但是,依旧不可小觑我国软件行业的发展速度。软件测试伴随着软件工程的发展,在我国也逐渐发展了起来。然而在我国,软件测试依旧没有得到足够的重视,很多公司的测试人员就是开发人员,软件不能得到合理专业的测试,就匆忙发布上线,给公司埋下了很大的隐患。在很多大公司中,会有专业的测试人员对项目进行测试,然而由于软件的快速迭代,测试人员一方面要进行新功能的测试,一方面又要进行回归测试,来保证新功能不会对原有的功能产生影响。再加上任务紧、时间短,导致测试人员没有时间进行优秀测试用例的设计。这样恶性循环,测试人员没有足够时间进行充分、专业的测试,导致软件质量提升有限,测试部门受到质疑。因此在我国,引进自动化测试来提高效率,保证软件质量是十分必要的。

1.3主要研究工作

本文研究的目的为针对“去哪儿”网度假版块的特点,设计基于 Selenium 自动化测试工具的 Web 自动化测试框架,并完成手动测试用例的脚本化,减少项目组的压力和保证项目进度。
本文研究内容主要包括:
自动化测试分析:结合“去哪儿”网度假版块特点,明确自动化测试需求及所要完


成的任务,挑选合适的自动化测试工具。
自动化测试设计:结合已经选定的自动化测试工具和测试需求,设计合适的自动化测试框架。
自动化测试开发:根据已经完成的分析和设计,开发完成自动化测试框架,并根据项目的特点设计用例并完成用例的编写。
自动化测试实施:在测试环境使用已经完成的自动化测试,完成后查看自动化测试的效果以及正确性。
本人在论文中的主要工作为结合项目与测试人员对脚本编写的要求,分析总结出自动化测试框架的需求。参与自动化测试框架的架构设计。框架总共分为 config 层、monitor层、case 层和 util 层四层,通过 controller 文件将四层进行串联,从而运行整个框架。参与实现了自动化测试框架,以第三方库的形式完成了框架,方便安装和使用。本人还参与了后期自动化测试脚本的编写,实现了部分测试用例的脚本化,完成了自动化测试的任务。

1.4论文结构

本文章节内容组织安排如下:
第一章 引言。本章首先介绍了论文的研究背景,然后分析了国内外的发展现状。最后介绍了论文的主要研究工作和论文结构。
第二章 自动化测试相关理论技术介绍。分别介绍了自动化测试、Web 自动化测试和 Selenium 自动化测试工具。为下面的内容进行铺垫。
第三章 自动化测试框架的分析与设计。首先进行了需求分析和了解了测试人员对自动化测试框架的要求。然后根据这些需求设计了自动化测试框架的架构。设计了每层的功能及如何串联每层,设计了如何控制自动化测试流程。
第四章 自动化测试框架的实现与实施。本章详细介绍了分析与设计中,部分重要功能的实现,与后期编写自动化测试脚本的所需要关注的内容。然后介绍了如何安装、使用该框架,并通过一个简单的自动化测试脚本的编写、实施、结果查看,来详细介绍了自动化测试框架的使用方法。
第五章 总结与展望。本章首先总结了论文介绍的内容,总结了本人所做的工作。然后介绍了目前框架存在的一些问题,与对后期改良框架产生的一些想法。


2自动化测试相关理论技术介绍

本章首先介绍自动化测试的一些理论与原理,进而介绍 Web 测试自身的一些特点,最后介绍了 Selenium 自动化测试工具。

2.1自动化测试概述

自动化测试就是使用相应软件,通过执行特定测试用例来进行测试的一种测试方法。它需要提前对预期结果进行设置,在自动执行测试用例后,需和预设结果进行比较,然后给出相应的测试报告。通常,自动化测试的开展需要基于已有的测试用例。

2.1.1自动化测试的意义

1.完成大量的回归测试
当今软件更新频率很快,每发布一个版本,就需要进行大量的回归测试来验证是否对之前的功能造成了影响。通过手工测试来完成这些重复枯燥的回归测试不仅效率低下,而且容易因为测试人员的失误而影响测试结果,影响项目的质量。通过引进自动测试可以很好地完成这些回归测试,减轻测试人员的工作压力,保证项目的进度和质量。
2.完成一些手动测试无法完成的测试
相对于自动化测试,手动测试拥有很多局限性。例如不能进行大量的并发访问来进行压力测试、无法模拟长时间运行来进行产品稳定性的测试、无法测试高并发情况下产品对资源的使用情况等。通过自动化测试,可以模拟手动测试对产品进行测试,完成压力测试、性能测试、稳定性测试等通过手动测试无法完成的测试任务。保证产品的质量。
3.可以更加合理地利用资源
由于开发人员和测试人员并不能做到完美的协调统一,可能到了周末开发人员才将项目完成,留给测试人员的时间很短,通过手动测试无法完成测试任务。自动化测试可以在无人看管的情况下按照安排自动运行,这样可以充分理由周末或者下班时间来进行测试,完成测试任务。
4.具有一致性和可重复性
一致性是手工测试很难做到的一点。然而在自动化测试中,由于每次运行的自动化测试脚本是相同的,可以保证每次运行的测试均是相同的,减少了人为因素影响测试结果的可能性。而且自动化测试脚本编写完成后,是可以重复运行的,这也减少了维护脚本的成本。


5.增加软件信任度
软件只有经过大量的测试才能保证质量,通过自动化测试,可以几乎完成对软件全方位的测试,可以及时发现问题,保证产品的质量,提高软件信任度。

2.1.2自动化测试的引入条件

在引进自动化测试之前,首先需要了解虽然自动化测试具有很多优点,但是并不能完全代替手工测试,也不是什么时候都可以引进自动化测试,它只是一种测试手段,不能解决所有问题。引进自动化测试需要有一定的条件,一般需要符合以下条件才考虑引进自动化测试:
1.软件需求变动不频繁。自动化测试需要自动化测试脚本的支持,若需求频繁变更,则需要频繁修改自动化测试脚本。而编写测试脚本本身就是一个代码开发的过程,频繁变动需求会导致维护成本过高,不适合使用自动化测试。
2.项目周期足够长。编写测试脚本本身也是一个代码开发的过程,需要时间去完成,若项目周期过短,开发脚本的时间不充足,则不适合使用自动化测试。
3.自动化测试脚本可重复使用。重复使用脚本可节约测试成本,若仅适用于一个项目,则没有必要使用自动化测试。
4.需要进行大量的回归测试。回归测试重复且枯燥,经常让测试人员进行大量的回归测试也会影响测试人员的心情和工作效率。
5.部分功能无法通过手动测试完成。由于手动测试自身的局限性,部分功能是无法通过手动测试来完成的,比如通过大量并发访问来进行的压力测试,需要精确计算的性能测试等。此时,可通过自动化测试模拟手动测试,实现这些功能的测试。

2.1.3自动化测试的过程

自动化测试的过程基本类似于软件开发,需要有完整明确的计划与需求。一个详细明确的计划可以让测试人员提前安排自己的工作,保证自动化测试能按照进度进行。同时保证自动化测试的质量,保证测试脚本开发的进度。
自动化测试的流程分为以下几个步骤:
1.制定自动化测试计划
想要实施自动化测试,必须要有详细的测试计划。详细的测试计划不仅可以让测试人员提前安排自己的工作,也有利于提醒开发人员合理安排任务进度,协调测试和开发人员的进度。
2.自动化测试需求分析


类似于传统的软件开发,自动化测试的实施也需要需求分析。在这个步骤中,需要完成详细的需求分析,需要知道哪一部分功能需要进行自动化测试,需要准备哪些数据,需要搭建怎样的环境。详细的需求分析有利于指导之后的自动化测试的实施。
3.自动化测试环境的搭建
有了需求分析之后,便可以着手测试环境的搭建。这个步骤中,需要根据需求分析选取合适的测试工具、开发工具、开发语言、测试平台等软件环境和硬件环境,同时也要准备测试需要的数据。保证自动化测试的顺利实施。
4.自动化测试脚本的设计与实现
这一部分需要根据需求分析,设计测试用例,用例设计需尽可能合理,覆盖到系统的所有功能。设计测试用例的方法包括:边界值法、等价类划分法等方法与原则。测试用例设计好后,需要将部分测试用例脚本化,进行测试脚本的开发,测试人员应按照计划进行开发,保证自动化测试的进度。
5.自动化测试的实施
自动化测试脚本开发完毕后,应按照计划进行执行,用来测试系统,找出系统的错误和不完善的地方。同时注意收集自动化测试脚本运行后的日志,在后续过程中通过分析日志找出一些隐藏的问题。
6.分析测试结果,记录测试问题
执行测试脚本后,自动化测试平台会提供详细的执行结果的数据。测试人员需要手动执行失败的用例,确认执行失败的用例是否真正为系统的缺陷。若真的为系统的缺陷,则需将其记录下来,提交给开发人员让其更正。若不是系统缺陷,测试人员需检查自动化测试脚本的正确性,一遍下次使用时,不会出现相同错误。
7.跟踪测试 BUG
发现 bug 后,测试人员需将其提交到 bug 管理平台上,并指定开发人员进行修复。提交了 bug 后,测试人员需跟踪 bug 的修复情况。待开发人员修复后,需要进行回归测试以验证是否修复了 bug。若已经修复,则关闭 bug;若没有修复,则需再提交到开发人员处,直至 bug 修复完成。

2.2Web 自动化测试概述

2.2.1Web 应用特点

Web 应用基本是建立在 B/S 架构之上的,在这种结构中,浏览器可以存在于不同终端上,如电脑、手机、平板电脑上,虽然大多数访问来自于电脑浏览器,但是近些年来,来自移动终端的访问也呈爆炸式增长。但是由于不同浏览器对 Web 标准的理解不同,


以及对标准的扩展方式不同,导致同一个界面在不同浏览器的显示和处理逻辑并不相同。开发人员需要考虑到不同浏览器之间的内核不同,他们对网页的展示、脚本的支持也不同,浏览器兼容性的测试也是 Web 应用系统测试中的一个重要挑战。
Web 应用的服务端一般采用 MVC 架构,大致分为三层:
表示层:表示层是用户唯一可以接触到的一层。这一层通过与用户交互,获取用户的数据发送到服务器上,并接受返回的结果展示给用户,是最为直观的一层。
业务层:用于处理表示层发送来的请求,在获取数据层的数据并处理之后,将数据返回到表示层。这一层需要大量的业务处理,保证性能是这一部分的关键。同时,由于可能接受大量的用户访问,造成系统难以负荷导致崩溃,需要做好负载均衡减轻服务器的压力。
数据层:负责应用与数据库间的数据交互,接受来自业务层的数据请求并对数据库进行相应的操作,然后将结果返回到业务层。数据层也需要进行负载平衡来减少服务器的压力,否则大量的访问也会导致服务器的崩溃。

2.2.2Web 应用系统测试内容

Web 测试主要通过功能测试、性能测试与压力测试、兼容性测试、安全性测试与可用性测试等来发现 Web 系统的缺陷。
功能测试:功能测试是最常规的测试,即根据需求对各个功能点进行测试,查看是否已经满足了需求上的功能点。实现了需求的功能也是对软件系统的最基本的要求,也是测试过程中关注最多的地方。
性能测试与压力测试:需要通过测试来了解网站的运行速度、相应时间、最大并发访问量的数据,来保证 Web 应用能够稳定、快速地运行,为使用者提供很好的体验。如果一个 Web 应用总是因为某些原因而崩溃或相应速度过慢,相信没有用户想使用这种系统。
兼容性测试:由于访问 Web 应用的浏览器、平台的不同,需要进行兼容性测试,保证 Web 应用可以在不同的环境下正常运行,避免因在不同平台的响应不同而造成不必要的损失。
安全性测试:互联网时代,安全性是很重要的一点,Web 应用尤其要注意这一点。保证接口的隐蔽性,也要注意 SQL 注入、CRLF 注入等恶意攻击,保证数据的安全性,否则不仅影响了应用使用,也会造成不可估量的损失。
可用性测试:应用的简洁易懂,是吸引用户的主要方式。如果网站不规范,使用起来十分麻烦,或者是界面十分不美观,是无法吸引用户长期使用下去的。
由此可见,Web 应用的测试量是十分巨大的,单靠手工测试很难在快速迭代中完成


大量新功能的测试和回归测试,所以引进自动化测试是十分必要的。通过自动化测试,可以解放测试人员,让他们把经历放到如何设计测试用例等其他更需要注意的地方,减轻测试人员的压力,提高效率。

2.3Selenium 自动化测试工具介绍

随着自动化测试的不断发展,市面上逐渐出现了许多自动化测试工具,例如 QTP、
LoadRunner 等。但是这些软件都因为不开源、收费过高等原因而被许多公司拒之门外。然而 Selenium 是一款开源、免费、方便实用的测试工具,他的功能也能满足测试人员平时的需求,所以 Selenium 受到了大量测试人员的青睐。

2.3.1Selenium 测试工具的组件

Selenium 是 ThoughtWorks 公司开发的一个用于 Web 应用测试的自动化测试工具。它的主要特点是具有开源性、跨平台性以及支持多种编程语言,它支持 Java、Python、
PHP 等多种开发语言,降低了使用门槛。如此多的优点,让 Selenium 逐渐成为了最受欢迎的 Web 自动化测试工具。
Selenium 组件共有以下组件:
Selenium IDE:是一个 Firefox 浏览器的插件,可以通过录制用户的基本操作,生成测试用例。随后可以通过运行测试用例在浏览器中回放之前进行录制的动作,也可将测试用例转换为其他语言的自动化脚本。
Selenium Remote Control (RC):也称作 Selenium1,是 Selenium 家族的核心工具,底层由JavaScript 实现,支持多种平台(Windows,Linux,Solaris)和多种浏览器(IE,Firefox,
Opera,Safari),可以用多种语言(Java,Ruby,Python,Perl,PHP,C#)编写测试用例。 Selenium 2:Selenium 1 + WebDriver 即为 Selenium 2。不同于 Selenium 1,Selenium
2 通过 WebDriver 选择浏览器最容易识别的语言来处理测试脚本中对应的操作,而不是完全由 JavaScript 来进行处理。WebDriver 还可以调用系统 API,在模拟鼠标键盘操作时,显得更为出色。
Selenium Grid :允许 Selenium-RC 针对规模庞大的测试案例集或者需要在不同环境中运行的测试案例集进行扩展。也就是说可以同时在不同机器上进行测试,这样可以极高的提高测试效率。

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信