- 浏览: 308233 次
- 性别:
- 来自: 长沙
文章分类
最新评论
-
完善自我:
支持一下!
揭秘IT人才特点:中美印日四国程序员比较 -
悲剧了:
好文,看玩thinking in java的提到的异常处理,看 ...
高效的Java异常处理框架(转) -
yin_bp:
开源框架bbossgroups页支持组件异步方法调用哦,详情请 ...
Spring 3中异步方法调用 -
flyjava:
sun的悲哀
Apache怒了,威胁说要离开JCP
简介: 本文从 WebKing 页面的静态分析出发,讨论了利用 WebKing 对支持 Ajax 的动态页面进行测试的方法,并且本文从单元测试和功能测试的角度介绍了使用 WebKing 测试 Accessibilily 的技巧,包括如何创建一个支持 Ajax 的测试项目,如何分析解决过滤 WebKing 报告出来的错误以及如何在开发人员和测试人员之前方便的沟通所发现的问题。
WebKing 是 Parasoft 公司推出的一款 Web 自动化测试软件,可以使用其进行白盒、黑盒和回归测试。本文主要关注该工具 对 Web 应用在 Accessibility 方面所做的检查与测试。WebKing 对 Accessibility 的检查基本上是扫描页面的元素内容, 按照特定的规则来匹配,不符合的即报错。 Webking 支持本地文件的检查测试和创建项目检查测试网站内容,包括静态、动态和 Ajax 测试。尤其对于动态的 Web 应用提供了很好的 录制回放扫描功能。目前比较新的版本是 6.0.5。
Webking 的基本原理是对页面内容按照特定的规则进行扫描,定义的规则包括 HTML,CSS,XSLT,JavaScript, WCAG2.0 等, 并且这个规则可以扩展,这就满足了很多企业在测试中不同的需求,用户可以根据企业的需要,自行开发相应的页面检测规则。 基本的本地文件测试和静态项目测试在 《开发和测试访问无障碍的 Web 应用》一文中都有简单的介绍,本文主要关注动态 Web 应用的测试技巧。
WebKing 对动态 Web 应用的支持分为两类,一类是普通的动态 Web 应用,一类是支持 Ajax 的 Web2.0 的 web 应用。本文以支持 Ajax 的 Web 应用为例。
首先创建一个支持 Ajax 的动态 Web 测试项目, 配置其 URL 和录制所用的浏览器,如图 1 图 2 所示。
图 1. 创建支持 Ajax 的动态项目
图 2. 设置 URL 以及录制所用的浏览器
创建完成后,选用的浏览器就自动打开,用户可以在 Web 应用上执行所要测试的功能了。本文以 Mashup Center 中创建一个新的窗口小部件为例,主要有以下几步操作:
- 1. 登录 Mashup center
- 2. 切换到编辑模式
- 3. 点击新建一个 Widget 的菜单
- 4. 点击创建 Widget 的链接
- 5. 输入要创建的 Widget 的名字,完成
所要测试的功能完成后,关闭浏览器。回到 WebKing 的界面我们可以看到,刚才执行的操作都被 WebKing 一一记录了下来。
下面需要 WebKing 回放扫描来检查这个功能是否符合 Accessbility 的要求。
在上面记录的测试集合中,打开项目的配置项,选择浏览器回放选项。一个是浏览器的选择,选择使用什么浏览器回放刚才的功能。 一个是配置使用什么规则扫描,如图 4 所示。
在静态分析那一项中,需要两次配置才能选择到具体的规则。第一次点击 config 按钮选择静态分析这个工具,如图 5 所示,第二次点击 config 按钮选择具体的规则,如图 6 所示。
如图 6 所示,Webking 的静态检查可以配置很多的规则从而对特定项目进行检查,如拼写检查, HTML 行业标准的检查,根据 DTD 检查 XHTML 文档的有效性以及 Accessibility 的检查。本文主要关注 Accessibility 的静态检查,选择 4a 项即可根据 WCAG2.0 所制定的规则进行检查。具体规则的定义可以参考 http://www.w3.org/TR/WCAG20/。
配置完成后就可以运行回放了,回放实际就是 WebKing 根据自己的记录把前面的操作重复一遍。此时有一些需要注意的地方,有的操作在 重复操作时会出错。比如上面创建 Widget 的操作,已经创建了一个名为 bb 的 Widget 了,再创建一个同名的肯定会出错。此时有两种选择, 一种是去 Mashup 里面把刚才创建的 Widget 删除,一种是在 WebKing 的对应的步骤里面修改,在重放的时候改变 Widget 的名字。WebKing 录制的 各个步骤都是可以看到预览图的,可以清楚的看到各个步骤对应的视图,如图 7 所示。在用户操作一栏可以修改用户输入的值,如图 8 所示 修改用户输入的 Widget 名字为 aa。
在回放前还可以对测试的步骤进行编辑,比如修改等待的时间,对于响应时间比较长的应用来说这个很有必要,如图 9 所示。 WebKing 的回放是基于 ID 来识别的,所以要保证录制的对应元素的 ID 在回放的过程中是不变的。尽量避免随机生成 ID 的情况,如果 不可避免的话,在录制时就要从 ID 固定下来以后再进行录制回放。比如 Mashup Center 中,从工具箱中拖一个 Widget 到页面上,这个 Widget 的 ID 就是随机生成的,如果要测试这个 Widget 的 Accessibility 就要从这个 Widget 在页面上保存下来以后再开始录制。否则如果 每次都重新拖一个下来,ID 都是随机生成的,下面的步骤就无法回放成功了,因为在回放时无法根据 ID 找到这个 Widget,后面的步骤 也就都中断了。另外在回放中如果碰到自动回放无法进行下去时,也可以在未超时以前手动干预,帮助配合 WebKing 的回放顺利完成。
回放完成后,就可以看到扫描的结果。可以将错误信息按照测试的步骤排列为表或者树形结构,如图 10 所示。这样可以方便的将错误信息 映射到某个测试步骤中,并且可以结合前面的步骤视图方便的找到对应的源代码。另外也可以通过错误的编辑菜单打开对应的源代码,找到错误 对应的错误代码,如图 11 所示。
点击 Edit 就可以在上方看到对应的 HTML 源码。另外也可以通过查看帮助文件,打开 WebKing 的具体规则定义,帮助用户去修改错误。
在很多情况下,我们测试是按照组件来测的,而在录制回放的过程中就可能把其他的组件也一起扫描测试。如果不想被其他的 错误所影响,我们还可以利用 WebKing 的过滤功能对错误进行过滤。或者由于 WebKing 仍然不支持 ARIA,有些错误从 ARIA 的角度看就不是真正的错误,这时也需要过滤 WebKing 报出来的错误。 如图 11 所示,选择 Suppress,打开过滤界面,如图 12 所示。
过滤可以分为几个级别,所有涉及该错误的信息都过滤掉,还是仅仅针对某个测试步骤过滤相应的错误信息,就需要测试人员具体情况具体分析了。
当测试人员在测试时发现了问题,给开发人员开了 bug 时,即使 bug 的描述很详细,有时开发人员仍然需要建立测试项目,按照测试人员的 步骤重新测试一遍才能找到对应的问题所在。为了方面测试和开发人员的沟通,测试人员在测试的过程中如果能清楚的保存测试项目,并且在开了 bug 时 积极的和开发人员共享该测试项目,开发人员则可以直接通过录制的步骤回放即可,方便快速的找到对应的错误。在回放时开发人员还可以通过 修改对应的 URL 将相应的 Web 应用指向自己的本地开发环境下的应用,方便的进行修改调试。如图 13 所示
本文主要以图示的方式介绍了使用 WebKing 测试动态 Web 应用的基本步骤,如何分析测试出来的结果以及如何帮助开发人员和测试人员沟通,修改发现的问题。
-
“开发和测试访问无障碍的 Web 应用
”(developerWorks 中国,2010 年 3 月)介绍了如何创建为残障人士无障碍访问的 Web 应用。
- 查看
WebKing
官方网站的参考资料。
- “为 WebSphere Portal 版本 4.1 中的 XML Access 开发 XML 请求文件
”(developerWorks,2002 年 10 月):WebSphere Portal 版本 4.1 所包括的 XML
Access 配置客户机接口允许将全部或部分配置设置导出为 XML 文件,并且允许通过导入 XML
文件重新创建配置。该接口还可以被用作执行某些管理任务(比如作为门户服务器中的 Portal Administration 区域和 Work
with Pages 区域的一部分这样的管理任务)的一种变通方案。
- “使用 Tivoli Access Manager 为 WebSphere Portal 4.1 启用认证和授权
”
(developerWorks,2002 年 11 月):IBM WebSphere Portal 支持用外部认证和授权引擎(比如 Tivoli
Access Manager)为门户引擎作出安全性方面的决定。本文讨论了安全性概念,一步步配置了 Tivoli Access Manager 和
Portal,并通过提供示范案例演示了运行时操作.
-
developerWorks Web development
专区
:通过专门关于 Web 技术的文章和教程,扩展您在网站开发方面的技能。
-
developerWorks Ajax 资源中心
:这是有关 Ajax 编程模型信息的一站式中心,包括很多文档、教程、论坛、blog、wiki 和新闻。任何 Ajax 的新信息都能在这里找到。
- developerWorks Web 2.0 资源中心 ,这是有关 Web 2.0 相关信息的一站式中心,包括大量 Web 2.0 技术文章、教程、下载和相关技术资源。您还可以通过 Web 2.0 新手入门 栏目,迅速了解 Web 2.0 的相关概念。
原文:http://www.ibm.com/developerworks/cn/web/1010_sunqy_webking/
发表评论
-
Web编程是函数式编程
2010-11-30 13:44 1041任何一位在两个领域里 ... -
如何开发Web应用程序
2010-11-30 13:41 1079这是一个经常被问到的 ... -
设计Web应用程序时要注意可伸缩性
2010-11-26 09:19 897Max Indelicato是一位软件 ... -
Web 2.0应用客户端性能问题十大根源
2010-11-25 20:19 1010Web 2.0应用的推广为用户带来了全新的体验,同时也让开 ... -
HTML压缩(JSP的GZIP实现)
2010-11-24 22:31 4911HTTP 压缩可以大大提高浏览网站的速度,它的 ... -
浏览器加载和渲染html的顺序
2010-11-22 09:45 25231.浏览器加载和渲染html的顺序 1、IE下载的顺序是从上到 ... -
在服务端合并和压缩JavaScript和CSS文件
2010-11-22 09:16 1106Web性能优化最佳实践中最重要的一条是减少HTTP请求 ... -
用 YUI Compressor 压缩和混淆 JS 和 CSS
2010-11-22 09:05 2321一、简介: 目前开发Web应用Javas ... -
如何缓存DWR生成的JS文件
2010-11-18 17:37 1943DWR provides a convenient mec ... -
HTTP状态一览
2010-11-17 22:43 754在网站建设的实际应用中,容易出现很多小小的失误,就像m ... -
两款HTTP流量分析工具的比较:HTTP Watch,Fiddler
2010-11-17 17:26 0做Web开发或者Web分析经常需要查看Http通讯的过程, ... -
了解CSS的查找匹配原理,让CSS更简洁、高效
2010-11-17 16:49 0用了这么多年的CSS,现在才明白CSS的真正匹配原理,不知 ... -
高性能WEB开发 - flush让页面分块,逐步呈现
2010-11-17 16:47 0在处理比较耗时的请求的时候,我们总希望先让用户先 ... -
WEB高性能开发 - 疯狂的HTML压缩
2010-11-17 16:46 0前言: ... -
该如何加载google-analytics(或其他第三方)的JS
2010-11-17 16:44 0很多网站为了获取用户访问网站的统计信息,使用了go ... -
高性能WEB开发 - 页面呈现、重绘、回流。
2010-11-17 15:57 0页面呈现流程 在讨论页面重绘、回流之前。需要 ... -
高性能WEB开发 - JS、CSS的合并、压缩、缓存管理
2010-11-17 15:54 0本篇文章主要讨论下目前JS,CSS 合并、压缩、缓存 ... -
高性能WEB开发- 减少请求,响应的数据量
2010-11-17 15:49 0上一篇中我们说 ... -
高性能WEB开发 - 为什么要减少请求数,如何减少请求数!
2010-11-17 15:42 0http请求头的数据量 我们先分析下 ... -
高性能web开发 - 如何加载JS,JS应该放在什么位置?
2010-11-17 15:39 0外部JS的阻塞下载 所有浏览器在下载JS的时候, ...
相关推荐
本文从WebKing页面的静态分析出发,讨论了利用WebKing对支持Ajax的动态页面进行测试的方法,并且本文从单元测试和功能测试的角度介绍了使用WebKing测试Accessibilily的技巧,包括如何创建一个支持Ajax的测试项目,...
Parasoft WebKing一个使关键的Web应用的静态分析、功能性测试、和负荷测试等自动化的Web验证工具,能够自动操作大多数关键的WEB验证作业:静态分析,功能测试和加载测试,能够帮助你不写一个脚本就能验证应用软件的...
WebKing 中文简短资料。希望给你带来一点了解。
原来常用的测试工具Webking在2011年5月31日正式在一些企业内部停止使用。原来相关的培训和文档资源链接也都转向RPT。本文通过一个实例来为开发人员和测试人员演示如何使用RPT来测试网站是否符合无障碍访问...
基于微信小程序的驾校预约管理系统(毕业设计,包括源码,文档说明)高分项目含有代码注释、使用文档说明,新手也可看懂,毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。该项目可以作为毕设、期末大作业使用,该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值,项目都经过严格调试,确保可以运行! 基于微信小程序的驾校预约管理系统(毕业设计,包括源码,文档说明)高分项目含有代码注释、使用文档说明,新手也可看懂,毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。该项目可以作为毕设、期末大作业使用,该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值,项目都经过严格调试,确保可以运行! 基于微信小程序的驾校预约管理系统(毕业设计,包括源码,文档说明)高分项目含有代码注释、使用文档说明,新手也可看懂,毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。该项目可以作为毕设、期末大作业使用,该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值,项目都经过严
P1923 【深基9.例4】求第 k 小的数
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。
tensorflow安装
python模块onnxruntime版本
求区间和
此资源为完整项目部署后演示效果视频,可参考后再做项目课设决定。 包含:项目源码、数据库脚本、项目说明等,有论文参考,该项目可以直接作为毕设使用。 技术实现: 后台框架:SpringBoot框架 或 SSM框架 数据库:MySQL 开发环境:JDK、IDEA、Tomcat 项目都经过严格调试,确保可以运行! 博主可有偿提供毕设相关的技术支持 如果您的开发基础不错,可以在此代码基础之上做改动以实现更多功能。 其他框架项目设计成品不多,请根据情况选择,致力于计算机专业毕设项目研究开发。
python模块onnxruntime版本
我们都知道,代码的运行时间很难计算(不是估算!)。 所以~我建造了这样一个精确记录运行时间的类,可达纳秒级计时(因配置决定)
B2070 计算分数加减表达式的值
onnxruntime-1.16.0-cp311-cp311-linux_armv7l.whl.zip
Java毕业设计-人事档案管理演示视频(高分期末大作业)
AUTOSAR_SRS_GPTDriver.pdf
python模块onnxruntime版本
高分项目,基于Unity3D开发实现的官方超好画质的射击游戏源码,内含完整源码+资源+unitypackage 射击游戏(Shooting game),简称为STG。游戏类型的一种,也是动作游戏的一种。射击游戏带有很明显的动作游戏特点,也没有纯然的射击游戏,因为射击必须要经过一种动作方式来呈现它的“射击”。所以不论是用枪械、飞机,只要是进行“射击动作”的游戏都可以称之为射击游戏。为了和一般动作游戏区分,只有强调利用“射击”途径才能完成目标的游戏才会被成为射击游戏。
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。