软件测试中web应用程序测试方法和测试技术
作者:网络转载 发布时间:[ 2010/11/24 14:05:19 ] 推荐标签:
* 2.一致性
* 快速键和菜单选项.在Windows 中按F1键总是得到帮助信息
* 术语和命令.整个软件使用同样的术语吗?特性命名一致吗?例如,Find是否一直叫Find,而不是有时叫Search?
* 软件是否一直面向同一级别用户?带有花哨用户界面的趣味贺卡程序不应该显示泄露技术机密的错误提示信息.
* 按钮位置和等价的按键.大家是否注意到对话框有OK按钮和Cancle按钮时,OK按钮总是在上方或者左方,而Cancle按钮总是在下方或右方?同样原因,Cancle按钮的等价按键通常是Esc,而选中按钮的等价按钮通常是Enter.保持一致.
* 3.灵活性
* 状态跳转.灵活的软件实现同一任务有多种选择方式.
* 状态终止和跳过,具有容错处理能力.
* 数据输入和输出.用户希望有多种方法输入数据和查看结果.例如,在写字板插入文字可用键盘输入,粘贴,从6种文件格式读入,作为对象插入,或者用鼠标从其他程序拖动.
* 4.舒适性
* 恰当.软件外观和感觉应该与所做的工作和使用者相符.
* 错误处理.程序应该在用户执行严重错误的操作之前提出警告,并允许用户恢复由于错误操作导致丢失的数据.如大家认为undo /redo是当然的.
* 性能.快不见得是好事.要让用户看得清程序在做什么,它是有反应的.
2.2 功能测试
* 对功能测试是测试中的重点
主要包括一下几个方面的内容
* 连接 这个连接和界面测试中的连接不同那里注重的是连接方式和位置,如是图像还是文字放置的位置等,还是其他的方式。这里的连接注重功能。如是否有连接,连接的是否是说明的位置等。
* 表单提交 应当模拟用户提交,验证是否完成功能,如注册信息,要测试这些程序,需要验证服务器能正确保存这些数据,而且后台运行的程序能正确解释和使用这些信息。还有数据正确性验证,异常处理等,好结合易用性要求等。B/S结构实现的功能可能主要的在这里,提交数据,处理数据等如果有固定的操作流程可以考虑自动化测试工具的录制功能,编写可重复使用的脚本代码,可以在测试、回归测试时运行以便减轻测试人员工作量。
* Cookies 验证 如果系统使用了cookie,测试人员需要对它们进行检测。如果在 cookies 中保存了注册信息,请确认该 cookie能够正常工作而且已对这些信息已经加密。如果使用 cookie 来统计次数,需要验证次数累计正确。关于cookie的使用可以参考浏览器的帮助信息。如果使用B/S结构cookies中存放的信息更多。功能易用性测试 完成了功能测试可以对应用性进行了解,好听听客户的反映,在可以的情况下对程序进行改进是很有必要的,和客户保持互动对系统满意度也是很有帮助的。
* 测试技术 功能测试的测试技术可是很多的,我们可以结合实际环境选择使用
* 白盒测试技术(White Box Testing) 深入到代码一级的测试,使用这种技术发现问题早,效果也是好的。该技术主要的特征是测试对象进入了代码内部,根据开发人员对代码和对程序的熟悉程度,对有需要的部分进行在软件编码阶段,开发人员根据自己对代码的理解和接触所进行的软件测试叫做白盒测试。这一阶段测试以软件开发人员为主,在JAVA平台使用Xunit系列工具进行测试,Xunit测试工具是类一级的测试工具对每一个类和该类的方法进行测试。
* 黑盒测试技术(Black Box Testing)黑盒测试的内容主要有以下几个方面,但是主要还是功能部分。主要是覆盖全部的功能,可以结合兼容,性能测试等方面进行,根据软件需求,设计文档,模拟客户场景随系统进行实际的测试,这种测试技术是使用多的测试技术涵盖了测试的方方面面,可以考虑以下方面
* 正确性 (Correctness):计算结果,命名等方面
* 可用性 (Usability):是否可以满足软件的需求说明。
* 边界条件 (Boundary Condition)输入部分的边界值,是使用一般书中说的等价类划分,试试大小和非法数据等等.
* 性能 (Performance) 正常使用的时间内系统完成一个任务需要的时间,多人同时使用的时候响应时间,在可以接受范围内.J2EE技术实现的系统在性能方面更是需要照顾的,一般原则是3秒以下接受,3-5秒可以接受,5秒以上影响易用性了. 如果在测试过程中发现性能问题,修复起来是非常艰难的,因为这常常意味着
程序的算法不好,结构不好,或者设计有问题。因此在产品开发的开始阶段,要考虑到软件的性能问题
* 压力测试 (Stress) 多用户情况 可以考虑使用压力测试工具,建议将压力和性能测试结合起来进行.如果有负载平衡的话还要在服务器端打开监测工具,查看服务器CPU使用率,内存占用情况,如果有必要可以模拟大量数据输入,对硬盘的影响等等信息.如果有必要的话必须进行性能优化(软硬件都可以).这里的压力测试针对的是某几项功能,.
* 错误恢复 (Error Recovery) 错误处理,页面数据验证,包括突然间断电,输入脏数据等.
安全性测试(Security)这个领域正在研究中,不过防火墙,补丁包.杀毒软件等的不必说了,不过可以考虑破坏性测试时任意.看了一些资料后得知,这里面设计到的知识内容可以写本书了,不是一两句可以说清的,特别是一些商务网站,或者跟钱有关,或者和公司秘密有关的web更是,需要这方面的测试,在外国有一种专门干这一行的人叫安全顾问,可以审核代码,提出安全建议,出现紧急事件是的处理办法等,在国内没有听说哪里有专门搞安全技术测试的内容.
* 兼容性 (Compatibility) 不同浏览器,不同应用程序版本在实现功能时的表现,不同的上网方式,如果你测试的是一个公共网站的话.
* 兼容性测试内容详述
* 硬件平台
* 浏览器软件和版本:浏览器插件,浏览器选项,视频分辨率和色深.文字大小,调制解调器速率.
* 软件配置 (Configuration) 如IE浏览器的不用选项-安全设定高,禁用脚本程序,等等,你们的程序在各种不用的设置下表现如何.

sales@spasvo.com