闵应骅的博客分享 http://blog.sciencenet.cn/u/ymin 一位IEEE终身Fellow对信息科学及其发展的看法

博文

软件的可用性和可达性测试(110219)

已有 5248 次阅读 2011-2-19 11:29 |个人分类:计算机|系统分类:科研笔记| 测试, 软件, 可用性, 可达性

软件的可用性和可达性测试(110219)
闵应骅

    软件测试现在得到普遍关注。尤其对于Web应用,人机交互很多。可以通过键盘、鼠标,或者是触屏,将来也许还可以通过手势、表情,甚至思想。这就产生了软件的usability(可用性)和accessibility(可达性)的问题。本来,在软件标准,譬如508,和软件导引,譬如WCAG,中已提出了可达性的问题,也有许多软件工具测试508和WCAG(WCAG (Web Content Accessibility Guidelines; http://www.w3.org/TR/WCAG20/) and Section 508 (http://www.access-board.gov/sec508/guide/1194.22.htm)。但是,那不是针对Web的应用质量。
    当然,你可以用人工测试的办法来测试可用性和可达性。上世纪80年代,测试PC机的软件,就是这么干的。公司雇很多研究生,让他们去自由上机,发现问题。但是,这个办法对情况无限的Web应用,几乎不太可能。所以,我们常常看到软件的Beta版发布出来,就是让用户来帮着做测试。公司知道该软件还有问题,请大家用,有问题告诉我们。但这样增加了用户的许多麻烦,终究不是推出高质量软件的办法。
    研制测试自动化工具看来很有必要。但是,测试自动化工具要求测试者有编程能力,例如用Java, Maven, JUnit,IDEs等,这可能就达不到,对开源软件,这要求可能更高。而且,要对不同的web浏览器都适用就比较困难。例如,对基于IE浏览器适用,对Firefox就不一定行。举个例子,现在Google很强大,他们有一个GWT (Google Web Toolkit)开放框架,花费了若干人年才付诸应用,可以在不同浏览器上应用。但是,GWT 也有问题,譬如可用性和可达性问题。如键盘输入无法继续跟踪和屏幕却没有显示。还有用键盘,“new message” 按钮是不可达的。在记录Web页历史时,初始的按键信息和光标可能被丢失。因为监视键盘输入过程必须保证回到原来状态,譬如回到浏览器上的地址横线上,或者开始的输入域,像Goole的搜索框。另外,屏幕布局影响用户的感知,由于布局位置的不同间接地影响可用性。例如一个奇特的web浏览器中的怪象,设计开发中的错误,差的工具和库的利用,都会使屏幕布局不合理。英文界面翻成中文,由于字数不同而引起诸多问题。一个自动测试办法是把一页上的文字由白色变黑,容易显示出错误。已经有许多算法显示web页的水平边和垂直边,譬如文字框、输入域,容易分层和区别文本,不致于重叠和掩盖。自动化的测试可以抓住和确定哪一个敲击造成此种情况。在WebDriver中,是在源码上增加若干行用于自动测试。
    web应用的动态测试,不光是对键盘输入,还要考虑触摸输入,这在iPhone, iPad, iPod, Android等越来越多的设备上使用。这些都需要自动测试。
    当许多技术集成到一个产品时,常常可能引出新问题,自动测试可以发现不少这样的问题。在Google的设备与工具中,用自动测试发现并改正了许多问题,使得几百万的用户请求得以简化和满足。这牵涉到产品质量以及用户对产品的信任度。
    针对一个软件,在一个特定环境下,进行自动化测试,有经验的软件测试工程师还是有办法的,开发自动化测试工具也是可能的。但是,我们缺乏一般性的软件测试理论和方法,来说明软件测试要测什么,怎么测,怎么自动化。那些“假大空”的描述可以说出许多,但对形成理论没有用。必须形成系统的理论,才能更好地指导实践。像硬件测试,自从上世纪70年代J.P.Roth引人固定型故障模型以来,引出了一系列的算法、定理和实验,形成了一个领域。而软件测试现在还没做到这样。

https://wap.sciencenet.cn/blog-290937-414404.html

上一篇:寄语科学基金申请者(110215)
下一篇:科研选题面向应用与基础性有矛盾(110223)
收藏 IP: 111.161.8.*| 热度|

1 俞立

发表评论 评论 (3 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-27 02:35

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部