Web功能自动化测试概述(PPT课件34页)
Web概述本章主要内容精品PPT课件
1.2 Web工作原理
静态网页与动态网页: 1. 静态网页仅仅使用HTML语言编写; 2. 动态网页需要使用脚本语言编写,根据网页内容依赖于数据库的内容。
1.3 Web服务
Web服务定义: • W3C(国际标准化组织)定义 • Microsoft定义 • IBM定义 • UDDI规范中定义
定义内容详见PP7-12。
1.3 Web服务
Web服务
UDDI Web服务&WSDL
SOAP、XML HTTP、HTTPS、SMTP、FTP
图1-2 Web服务的多层构成
服务发现层 服务描述层 基于XML的消息层 网络层
1.3 Web服务
UUID等于的四种基本结构: • 商业实体(Business entiy):描述商业信息,如名称和类
器; 4. 如果URL指向脚本语言文本*(或HTML文档中嵌入有脚本语言文本),
则Web服务器运行脚本语言的程序(一般是解释执行脚本程序),将 其输出结果送浏览器; 5. URL也可以执行其他的脚本语言程序,例如:VRML和Ruby等等。
* 常用的脚本语言有PHP、ASP、和每一个人,既是信息 的接收者,也是信息的传播者,大家通过相互协作 来完成各自的任务和实现各自的目的。
分享精神指接入互联网的每一个人,将各自拥 有的信息分享在互联网上,使得任何人都可以使用。
1.1 Web概念
Web的五要素: •URL •HTTP •HTML •Web浏览器 •Web服务器
第1 章Web概述
Web应用举例(续): •Social networking service(SNS,社会化网络服务) •Online shopping(在线购物) •Web search engine(搜索引擎) •Internet governance(网络政务) •Browse game(页游,网页游戏) •Webcam(网络摄像) •Electronic business(e-business,电子商务)
自动化测试讲解 PPT课件
一、简述自动化测试框架
• 也许很多人印象里的自动化测试框架就是一个能够进 行自动化测试的程序似的。其实这不全面,真正的自 动化测试框架可以不是一个程序,它仅仅是一种思想 和方法的集合,说白了,就是一个架构,大家应该都 知道操作系统其实也是一个架构吧,你可以把其理解 成一个基础的自动化测试框架为一个简单的操作系统, 它定义了几层架构,定义了各层互相通信的方式。通 过这个架构我们才能在上面进行拓展我们的测试对象 (核心体)、测试库(链接库)、测试用例集(各个 windows进程)、测试用例(线程),而其之间的通 过参数的传递进行通信(即相当于系统中的消息传 递)。
重要性不言而喻; • 集成测试在很多情况下非常适合使用自动化的手段去运行,最明显的例子是rails里的integration test;
(unit test:就是独立测试每个功能块的功能.integration test:是测试那些有相互联系的功能块之间的 联系, 和共同运行的结果.system test: 测试整个系统,所有的功能块都要考虑.) • 当单元测试和集成测试都没做好,甚至是没有做的情况下,UI级的自动化测试可以扮演救火队员的 角色,尽管成本很高,但是可维护的UI测试代码是回归测试的福音,也是提高测试生产力的重要手 段; • 自动化测试可以培养团队,一个团队如果可以把自动化测试做好,那么他们的开发水平一定不低, 而且如果这些人去做开发,代码的质量反而比一般的开发人员要高,原因很容易理解,测试人员坚 信没有测试过的东西就是不可信的,代码如果没有被测试过,那么代码自然是不可信的,不可信的 代码就需要用单元测试去覆盖,因此这可以从根本上提高代码的质量。 那么自动化测试如何去学习呢?这里给出一个很平滑的线路图。 • 学习一门脚本语言,ruby python or javascript。当然,如果你信仰优雅,追求美感的话,你可以学 习ruby(本框架使用的语言) • 学习语言的过程是漫长而枯燥的,你可以通过使用selenium webdriver api来更加有效率的学习。在 学会自动化测试的同时也搞定了一门语言,而且每一步都很有成就感。
《Web系统设计》课件
性能测试
评估Web系统的性能表现。
通过模拟高并发、大数据量等场景,检测Web系统的响应时间、吞吐量、稳定性等性能指标,优化系 统性能。
安全测试
保障Web系统的安全性。
对Web系统进行安全漏洞扫描、攻击 模拟等测试,及时发现并修复安全问 题,提高系统的安全性。
用户体验优化
提高Web系统的用户体验。
后端开发技术
服务器端语言
如Node.js、Python、Java和PHP等,用于处理业务逻辑和与 数据库交互。
Web框架
如Express、Django和Spring等,提供路由、模板引擎、ORM 等功能,简化Web应用开发。
API设计与开发
设计和开发RESTful API,实现前后端分离架构。
数据库技术
安全性原则
总结词
数据加密与传输安全
01
总结词
防止SQL注入与跨站脚本攻击(XSS )
03
总结词
用户身份验证与授权管理
05
02
详细描述
Web系统应采用数据加密技术,确保数据在 传输过程中的安全性。
04
详细描述
Web系统应采取措施防止SQL注入和 跨站脚本攻击(XSS),保护用户数 据安全。
06
详细描述
数据库表结构
根据数据模型,设计数据库表结构。
04
Web系统开发技术
前端开发技术
HTML/CSS/JavaScript
用于构建网页的外观和交互效果,实现动态内容更新和用户交互 。
前端框架
如React、Vue.js和Angular等,提供丰富的组件和工具,简化 Web应用开发。
前端库
如jQuery和Bootstrap,提供丰富的功能和样式,提高开发效率 。
《自动化测试》课件
提高自动化测试效率的技巧
合理选择自动化测试工具
定期维护和更新测试脚本
制定详细的测试计划和测试用例 优化测试脚本,减少重复代码
提高测试人员的技能和经验
采用持续集成和持续部署(CI/CD) 方法
自动化测试与手动测试的协同工作方式
自动化测试与手 动测试的优缺点
自动化测试与手 动测试的适用场 景
自动化测试与手 动测试的协同策ቤተ መጻሕፍቲ ባይዱ略
执行测试用例:按照设计的 测试用例执行测试
评估测试结果:根据测试结 果评估测试效果,包括通过
率、覆盖率等指标
测试环境搭建
硬件环境:服务器、 网络设备、存储设 备等
软件环境:操作系 统、数据库、中间 件等
测试工具:自动化 测试框架、测试脚 本、测试数据等
测试数据:模拟真 实数据,确保测试 结果的准确性
工具的稳定性和 可靠性:是否稳 定可靠,是否会 出现崩溃、错误 等现象
工具的社区支持 和文档:是否有 活跃的社区支持, 文档是否齐全, 是否容易找到解 决方案
自动化测试工具的使用方法
安装自动化 测试工具, 如Selenium、 Appium等
编写自动化 测试脚本, 包括测试步 骤、预期结 果等
执行自动化 测试脚本, 观察测试结 果
自动化测试与手 动测试的协同工 具和技巧
06
未来自动化测试的发展 趋势
AI技术在自动化测试中的应用前景
提高测试覆盖率:AI技术可 以自动识别测试盲点,提高 测试覆盖率
提高测试准确性:AI技术可 以自动识别测试错误,提高
测试准确性
提高测试效率:AI技术可以 自动生成测试用例,提高测 试效率
提高测试智能化:AI技术可 以自动分析测试结果,提高
软件测试基础Web测试的方法和技巧精品PPT课件
慢,用户可能还没来得及浏览内容,就需要重新登 陆了 (2)而且,连接速度太慢,还可能引起数据丢失,使 用户得不到真实的页面
压力测试
❖ 负载测试应该安排在Web系统发布以后,在实际的网络环 境中进行测试 ✿ 一个企业内部员工,特别是项目组人员总是有限的,而 一个Web系统能同时处理的请求数量将远远超出这个 限度,只有放在Internet上,接受负载测试,其结果才 是正确可信的
可用性测试
❖ 导航测试 ❖ 图形测试 ❖ 内容测试 ❖ 表格测试 ❖ 整体界面测试
导航测试
❀ 描述用户在一个页面内操作的方式 ❖ 在不同的用户界面控件之间 ❖ 例如按钮、对话框、列表和窗口 ❀ 在不同的链接页面之间
导航测试
❀ Checklist举例 ❖ 导航是否直观 ❖ Web系统的主要部分是否可通过主页存取 ❖ Web系统是否有站点地图、搜索引擎或其他的导
复杂的Web应用场景
❖ Web服务器
服务器端,接受来自用户代理的传输 典型的Web服务器
安装了IIS的Windows 2003 Server 安装了Apache的Linux版本
服务器端使用ASP、JSP或PHP编写
复杂的Web应用场景
数据库 ❖ 数据库可能和Web服务器处于同一机器上 ❖ 在较小的应用程序中,可能只有一台机器处理客户
链接测试
❖ 链接测试方法
✿ 借助自动链接检查工具测试
— WebCheck — Link Sleuth
✿ 手工测试
— 完成工具无法完成的检查,弥补工具的不足
WEB测试方法(超全面)
WEB测试方法(超全面)WEB测试方法在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。
基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。
重要的是,还要从最终用户的角度进行安全性和可用性测试。
然而,Internet和Web媒体的不可预见性使测试基于Web的系统变得困难。
因此,我们必须为测试和评估复杂的基于Web的系统研究新的方法和技术。
本文将 web 测试分为 6 个部分:功能测试性能测试(包括负载/压力测试)用户界面测试兼容性测试安全测试接口测试1功能测试1.1链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。
链接测试可分为三个方面。
首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
1.2表单测试当用户通过表单提交信息的时候,都希望表单能正常工作。
如果使用表单来进行在线注册,要确保提交按钮能正常工作,当注册完成后应返回注册成功的消息。
如果使用表单收集配送信息,应确保程序能够正确处理这些数据,最后能让顾客收到包裹。
要测试这些程序,需要验证服务器能正确保存这些数据,而且后台运行的程序能正确解释和使用这些信息。
当用户使用表单进行用户注册、登陆、信息提交等操作时,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。
例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。
如果使用了默认值,还要检验默认值的正确性。
如果表单只能接受指定的某些值,则也要进行测试。
例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。
1.3数据校验如果系根据业务规则需要对用户输入进行校验,需要保证这些校验功能正常工作。
Web技术与应用课件
Web技术与应用
学习要点: 1. 掌握Web的基本概念和基础知识。 2. 熟悉C/S模式与B/S模式的结构。 3 .了解常用的Web开发工具。 4.了解Web开发的基本技术。 5. 了解Web 2.0的特点及相关技术。
第1章 Web开发技术概述
Web技术与应用
1 使用环境和使用方式 1) 单机系统 (计算技术) 单用户单任务 多用户多任务(VAX PDP) 控制台命令方式(串行运行、独占) 交互命令方式(交替串行、并发、并行 共享) 2) 网络系统(计算技术 通信技术) 多用户 多任务 (物理资源、逻辑资源共享) (C/S模式) (B/S模式)
Web技术与应用
Web访问的机理
Web技术与应用
Web开发平台的组成
.NET开发平台 2000年6月,微软公司宣布其.NET战略。2001年,ECMA通过了Microsoft提交的C#语言和CLI标准,这两个技术标准构成了.NET平台的基石。2002年,Microsoft正式发布.NET Framework和Visual Studio .NET开发工具。 微软公司的.NET战略揭示了一个全新的境界,提供了一个新的软件开发模型。.NET战略的一个关键特性在于它独立于任何特定的语言或平台。它不要求程序员使用一种特定的程序语言。相反,开发者可使用多种.NET兼容语言的任意组合来创建一个.NET应用程序。多个程序员可致力于同一个软件项目,但分别采用自己最精通的.NET语言编写代码。
Web技术与应用
C/S模式与B/S模式
C/S计算模式将应用一分为二:前端是客户机,几乎所有的应用逻辑都在客户端进行和表达,客户机完成与用户的交互任务。后端是服务器,它负责后台数据的查询和管理、大规模的计算等服务。通常客户端的任务比较繁重,称作“肥”客户端,而服务器端的任务较轻,称作“瘦”服务器。
自动化测试介绍 PPT课件
行统一配置。
QTP方式、QTP+QC方式、QTP+其它辅助工具的方式 QTP+QC方式、QTP+其它辅助工具的方式的不同:
④ 执行目的的直观性: QTP+QC方式:脚本按照一定顺序组成的业务流或者执行流,不能快速直观
自动化测试的优势
4 .通过自动化测试发现系统的隐患,保证了系统上线后的稳定运行,避免了由于系 统缺陷造成的损失。
成本
成本
开
升级
发
运维
阶
阶段
段
手工测试
时 间
广州南天
开
升级
时
发
运维
间
阶
阶段
段
自动化测试
自动化测试的优势
5 .其他优势:
✓ 创建优良可靠的测试过程,减少人为错误; ✓ 可以运行更多更繁琐的测试; ✓ 可以执行一些手工测试困难或不可能进行的测试; ✓ 更好的利用资源; ✓ 测试具有一致性和重复性; ✓ 测试脚本的重用性;
测试耗时图
140
120
100
80
时间
60
40
20
0
0
300
功能点
350
手工测试
自动化测试
400
自动化测试的优势
3.增强测试的覆盖率,从而提高产品质量,降低潜在风险
90% 88% 86% 84% 82% 80% 78% 76% 74% 72% 70%
开发中
上线前
手工测试
上线后变更1
第09章WEB应用测试-图文
第09章WEB应用测试-图文第9章WEB应用测试一、WEB系统构成WEB构成:▲客户端▲WEB服务器▲数据库▲网络及中间件▲防火墙与CA认证大型WEB系统,为了承受较大的访问压力,会采用负载均衡器技术,使用多个WEB应用服务器,分担来自客户端的访问压力。
二、WEB系统设计技术1、静态页面及动态页面2、网络开发技术3、CGI(通用网关接口)程序4、J2EE5、。
NET6、WEBSERVICES三、WEB系统的测试策略1、WEB系统的测试分类按系统架构分:客户端、服务器、网络上的测试按职能分:应用功能、WEB应用服务、安全系统的测试按软件质量特性分:功能、性能、安全性、兼容性、易用性测试按开发阶段分:设计、编码、系统测试2、总体架构设计的测试1)、采用瘦客户端或胖客户端是否适合需求2)、确定WEB架构的组成部分是否满足需求3)、服务器的配置及分布是否满足需求3、客户端设计的测试1)、功能设置的测试2)、信息组织结构设计的测试3)、页面设计的测试4、服务器端设计的测试1)、容量规划的测试估算点击率是否满足需求;估算延迟和流量是否满足需求;估算WEB应用系统所需服务器的资源消耗(性能瓶颈重点考虑所需内存、CPU利用率)什么叫点击率、延迟、流量?点击率:每秒HTTP的请求数,也叫每秒被访问的次数。
延迟:指从点击页面开始进入页面到它显示内容之间的时间。
流量:通信的字节数。
2)、安全系统设计的测试常识性安全策略;●使用加密技术;如数字签名、SSL和SHTTP、链加密、文档加密等●构造防火墙有三种:网络级、应用级和电路级●构建网络防毒系统3)、数据库设计的测试5、WEB应用开发测试1)、代码测试源代码规则分析;链接测试;框架测试;表格测试;图形测试2)、组件测试表单测试;Cookie测试;脚本测试;CGI测试;ASP测试;Active某控件测试△可使用工具测试:如JUNIT进行单元测试6、WEB应用运行测试1)、功能测试客户端的选择:包括操作系统、浏览器客户端的浏览器的配置:Cookie设置、脚本设置、安全设置、显示设置客户端显示设置:分辩率的设置内容测试:是用来检查WEB应用系统提供的信息的正确性、准确性、和相关性。
敏捷的WebUI自动化测试框架课件
案例背景—艰辛的自动化测试之路
优秀UI框架/工具的采用大大降低了开发成本和难度……
测试脚本则要面对UI框架生成的海量源码……
用例回放的有效性大幅降低,自动化测试变得雪上加霜……
页面DOM结构非常复杂——所录制/编写脚本的复杂度变的更大、可读性变得更差;即使页面代码没有任何变化,UI框架的升级也会导致DOM结构的变化——脚本无效的风险变得更大;控件ID是自动生成的,甚至可能随机变化——导致根据ID定位控件的策略无效;
根据界面快速编写测试用例——敏捷应对需求的变化;隔离对技术实现(UI框架、页面样式/布局)的依赖——敏捷应对设计/开发的变化;支持跨浏览器稳定回放——敏捷应对环境的变化;
“用户使用软件”与“自动化测试软件”之间目前存在一些重要差异……
如果能像用户使用软件一样进行自动化测试,我们会变得更敏捷……
敏捷的核心是响应变化,因此开发和测试都需要快速响应需求的变化;而测试额外还需要快速响应开发的变化;
与云计算资源管理工具打包,形成完整的企业私有测试云解决方案。
案例ROI分析
投入
工作量
备注
测试框架研发成本
>6人月
一次性投入,具体视功能范围而定
测试脚本语法实现
5人天
一次性投入,可复用于相同UI框架开发所有项目
测试脚本语法学习成本
<0.5人天
掌握基本用法,不含在用例设计方面的经验积累
案例启示
技术的发展是为了让人类生活变得越来越轻松。Web技术发展至今已经可以让开发人员很容易的实现交互性强、展现效果绚的界面,用户也从中得到非常好的使用体验。
实践 1—用户化的测试脚本
自动化测试用例(概述)
⾃动化测试⽤例(概述)前⾔⼿⼯测试⽤例与⾃动化测试⽤例对⽐如下。
1、⼿⼯测试⽤例特点:①较好的异常处理能⼒,能通过⼈为的逻辑判断校验当前步骤的功能是否正确实现②⼈⼯执⾏⽤例具有⼀定的步骤跳跃性③⼈⼯测试步步跟踪,能够细致地定位问题④主要⽤来发现功能缺陷1、⾃动化测试⽤例特点:①执⾏对象是脚本,任何⼀个判断都需要编码定义②⽤例步骤之间关联性强③主要⽤来保证产品主体功能正确和完整,让测试⼈员从烦琐重复的⼯作中解脱出来④⽬前⾃动化测试阶段定位在冒烟测试和回归测试通过对⽐我们可以看到,⼿⼯测试⽤例与⾃动化测试⽤例之间存在较⼤的差异,所以,不能直接把⼿⼯测试⽤例“翻译”成⾃动化测试脚本。
通过它们之间的特点对⽐也可清晰地认识到,⾃动化测试不能完全地替代⼿⼯测试,⾃动化测试的⽬的仅仅在于让测试⼈员从烦琐重复的测试过程中解脱出来,把更多的时间和精⼒放到更有价值的测试中,例如探索性测试。
⽽⾃动化测试更多的是⽤来进⾏冒烟测试和回归测试。
1、⾃动化测试⽤例选型注意事项:①不是所有的⼿⼯⽤例都要转为⾃动化测试⽤例。
②考虑到脚本幵发的成本,不要选择流程太复杂的⽤例。
如果有必要,可以考虑把流程拆分成多个⽤例来实现脚本。
③选择的⽤例最好可以构建成场景。
例如,⼀个功能模块,分多个⽤例,多个⽤例使⽤同⼀个场景。
这样的好处在于⽅便构建关键字测试模型。
④选择的⽤例可以带有⽬的性。
例如,这部分⽤例作冒烟测试,那部分⽤例作回归测试等,当然,会存在重叠的关系。
如果当前⽤例不能满⾜需求,那么唯有修改⽤例来适应脚本和需求。
⑤选取的⽤例可以是你认为是重复执⾏,很烦琐的部分。
例如,字段验证、提⽰信息验证这类,这部分适⽤于回归测试。
⑥选取的⽤例可以是主体流程,这部分适⽤于冒烟测试。
⑦⾃动化测试也可以⽤来做配置检查、数据库检查。
这些可能超越了⼿⼯⽤例,但也算⽤例拓展的⼀部分,项⽬负责⼈可以有选择地增加。
⑧平时在⼿⼯测试时,如果需要构造⼀些复杂的数据或重复⼀些简单的机械式动作, 则告诉⾃动化脚本,让它来帮你,或许你的效率会因此⽽得到提⾼。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常用API介绍
Browser
• 初始化浏览器
browser = Watir::Browser.new :ie # 其中,“:ie”表示IE浏览器,其他浏览器例如:“:chrome”,“:firefox”
• 访问站点
browser.goto “url”
• 关闭浏览器
免费
功能强大
丰富的代码库
可视化界面
易维护
支持脚本录制
开源功能自动化框架比较
Selenium 2.0
多浏览器 支持
多语言支 持
Watir
语法简单 易扩展
Watir WebDriver
• Watir WebDriver是Selenium WebDriver的一个封装,使得Selenium WebDriver
# 一般用于测试结果断言
Check Box
• 复选框勾选 browser.checkbox(:id => “cbx”).set
• 复选框取消勾选 browser.checkbox(:id => “cbx”).clear
• 复选框是否勾选 browser.checkbox(:id => “cbx”). set?
• 是否存在 browser.text_field(:id => “txt”).exists?
# 一般用于测试结果断言
Select List
• 下拉框根据值选择 browser.select_list(:id => sel”).select “value” • 下拉框是否存在 browser.select_list(:id => “sel”).exists? # 一般用于测试结果断言
Web功能自动化测试
——Watir WebDriver
第一讲:基础 知识
什么是功能自动化测试?
• 一般是指软件测试的自动化。自动化测试可理解为测试过程自动
化和测试结果分析自动化,包括测试活动的管理与实施、测试脚 本的开发与执行。
• 软件自动化测试模拟手动测试步骤,控制被测软件的执行,完成
全自动或半自动测试的过程。
browser.close
Button
• 按钮单击
browser.button(:id => “btn”).click
• 按钮双击
browser.button(:id => “btn”).double_click
• 按钮是否存在
browser.button(:id => “btn”).exists?
# 一般用于测试结果断言
Link
• 超链接单击 browser.link(:id => “lnk”).click
• 超链接双击 browser.link(:id => “lnk”).double_click
• 是否存在 browser.link(:id => “lnk”).exists?
# 一般用于测试结果断言
Radio
• 单选框勾选 browser.radio(:id => “ra”).set
• 单选框是否勾选 browser.radio(:id => “ra”).set?
# 一般用于测试结果断言
• 是否存在 browser.radio(:id => “ra”).exists?
的API更加友好,同时使用了Watir的API组织形式,使得代码更简洁和优雅。
Selenium 2.0
Watir WebDriver
Watir
Watir WebDriver
• 当然,我们可以通过以下链接,非常方便的获取到Watir WebDriver的API进
行阅读。 /gems/watir-webdriver
如何定位元素
• 使用name定位
HTML代码: <input type="text" class=“css" id=“txtBox1" name=" usertxtBox" >
Ruby代码: browser.text_field(:name => “usertxtBox”).set “user”
自动化测试
查看测 试报告
为什么需要功能自动化测试?
提高工 作效率
增加软 件信任
度
节省人力资 源
• 注意:自动化测试虽然具有很多优点,但它只是测试工作的一部
分,是对手工测试的一种补充。
功能自动化测试前提条件
• 软件需求变动不频繁
1 • 稳定的模块进行自动化测试
• 项目周期足够长
2 • 自动化测试是开发过程,需要较长时间
• 全自动测试:指不需人工干预,由程序自动完成测试的全过程。
• 半自动测试:指在测试过程中,需手动输入测试用例或选择测试
路径,再由自动测试程序按照人工指定的要求完成自动测试。
为什么需要功能自动化测试?
• 删除功能
手动单 击删除 按钮
肉眼查 看记录 是否存
在
手动测试
编写或 录制脚
本
调试或 回放脚
本
运行
Page22
如何定位元素
• 使用class定位
# 一般用于测试结果断言
• 复选框是否存在 browser.checkbox(:id => “cbx”). exists?
Text Field
• 文本框设置值 browser.text_field(:id => “txt”).set “value”
# 文本框自动清空,全量输入
• 文本框输入值 browser.text_field(:id => “txt”).send_keys “value” # 文本框不清空,增量输入
• 自动化脚本可重复使用
3 • 成本应不大于所创造的经济价值
如何实现功能自动化测试?
• 开源框架
Selenium 2.0(WebDriver)、Watir等
• 商业工具
QTP、Rational Robot、SilkTest等
开源框架与商业工具比较
• 开源(如Selenium 2.0)
• 商业(如QTP)
如何定位元素?
如何定位元素
• 使用id定位 HTML代码: <input type="text" class=“css" id=“txtBox1" name=" usertxtBox" >
Ruby代码: browser.text_field(:id => “txtBox1”).set “user”