欢迎来到天天文库
浏览记录
ID:44811898
大小:92.36 KB
页数:13页
时间:2019-10-29
《selenium笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Selenium自动化验收测试如何使用Selenium测试工具对RubyonRails和Ajax应用程序进行功能测试验收测试(也称功能测试)是用来测试手工任务的功能的,但是手工测试这些任务可能很花时间,并且容易出现人为的错误。在本文中,作者为架构师、开发人员和测试人员展示了如何使用Selenium测试工具来自动化验收测试。通过自动化测试,可以节省时间,并消除测试人员所犯的错误。文中还给出了一个例子,以演示如何将Selenium应用到现实中使用RubyonRails和Ajax的项目上。Web应用程序的验收测试常常涉及一些手工任务,例如打开一个浏览器,并执行一个测试用例中所描述的操作
2、。但是手工执行的任务容易出现操作人员人为的错误,也比较费时间。因此,尽可能将这些任务自动化,以消除人为因素,这是一种很好的做法。于是Selenium之类的测试工具就有了用武之地。Selenium帮助您自动化验收测试,从而可以构建经过更严格测试、因而更为可靠也更易于维护的软件。验收测试也称黑盒测试和功能测试,是测试和检验应用程序是否能按照涉众(stakeholder)的功能性需求、非功能性需求和其他重要需求来运行的一种方法。验收测试是单元测试和组合测试的补充,后两者通常是使用xUnit框架编写的。验收测试也可以使用编程语言来编写,但是Selenium和其他类似的工具,例如Fitne
3、sse,也支持用特定于工具的文档格式编写测试。验收测试与单元测试和组合测试有以下不同之处:·应用程序是作为一个完整的端到端实体来测试的,而不是像单元测试和组合测试那样,只是测试一个类或一组类。·验收测试是在用户界面(例如一个浏览器)上执行的,而不是在Web应用程序界面上执行的。·编写测试用例的人不一定知道应用程序的内部结构,因此也被称作黑盒测试。非技术性用户也可以编写验收测试。背景知识在讨论Selenium之前,我要介绍关于以下三个话题的一些背景知识,因为这些话题虽然不是本文的主题,但是和本文密切相关:·持续集成·Ajax·Ruby/RubyonRails持续集成持续集成的目标是
4、自动化构建和测试过程,以便每天自动运行一次或多次这些过程,而不是每个月手动地运行一次。使用持续集成的最大好处是,代码的更改会定期地自动被集成。如果系统受损,没有构建成功,ApacheContinuum和Luntbuild之类的持续集成工具可以自动通过发送电子邮件通知团队。AjaxAjax是AsynchronousJavaScriptandXML的缩写,这是为相当老的技术新创造的一个术语。Ajax背后的主要思想是,由于只需更新部分页面而不是整个页面,所以Web应用程序可以更快地对用户操作做出响应。Ajax将更多的复杂性引入到Web应用程序中,这一点也反映在测试中。这是因为Ajax就
5、像它的名称所表明的那样,使用JavaScript和异步HTTP请求来更新页面内容。每个浏览器在实现中与其他浏览器相比有一些小小的不同。Selenium是测试和检测这些差异的很好的工具,因为它在大多数流行的浏览器中都能够运行。Ruby/RubyonRailsRuby是一种开放源码的解释型脚本语言,用于快捷、容易地进行面向对象程序设计。它提供了大量的库,而且简单易用,还具有可扩展性和可移植性。该语言是由Yukihiro“Matz”Matsumoto创造的,目的是让程序员将更多的注意力放在手头的任务上,摆脱语法的烦恼。Rails是由DavidHeinemeierHansson创造的一种
6、全栈的(full-stack)、开放源码的RubyWeb框架。Rails的目标是使现实中的应用程序编写起来需要的代码更少,并且比J2EE和XML之类的语言更容易。所有层都能够无缝地一起工作,因此可以使用一种语言编写从模板到控制流乃至业务逻辑的各种东西。Rails使用YAML而不是XML配置文件以及注释形式的反射和运行时扩展。这里不存在编译阶段——程序修改后将直接运行。什么是Selenium?Selenium是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。据Selenium主页所说,与其他测试工具相比,使用Selenium的最大好处是:Selenium测试直接
7、在浏览器中运行,就像真实用户所做的一样。Selenium测试可以在Windows、Linux和MacintoshAnd上的InternetExplorer、Mozilla和Firefox中运行。其他测试工具都不能覆盖如此多的平台。使用Selenium和在浏览器中运行测试还有很多其他好处。下面是主要的两大好处:·通过编写模仿用户操作的Selenium测试脚本,可以从终端用户的角度来测试应用程序。·通过在不同浏览器中运行测试,更容易发现浏览器的不兼容性。Selenium的核心,也称b
此文档下载收益归作者所有