针对自己开发(或常用)的一个Web系统,结合所学软件测试相关技术,评价项目的可用性、可靠性和安全性。
要求包括:1.项目简介;2.可用性、可靠性和安全性测试时,有没有使用工具,测试了哪些内容,结果如何。
本项目为本人应用所学的WebUI、JDBC和Servlet知识,结合实际场景,为某商店设计在线销售Web应用的数据管理功能,设计界面包括商品类型管理、商品管理、订单管理、会员管理等数据管理功能,能够通过Servlet更新和查询数据,更新和查询结果暂通过控制台显示。商品类型和商品均支持增删改查,订单中包含会员、购买日期、商品数量和价格等信息,会员管理包括会员编号、手机号、邮箱号等信息。
本地项目地址:localhost:8080/newitcaststore/admin/login/home.jsp
项目部分截图:
可用性测试也叫用户体验测试,属于系统测试的一种。
通过发动最终用户在真实环境下对应用程序进行测试,一些即使在大规模的自动化测试中没发现的问题都有可能被挖掘出来。
1、导航测试
(1)导航是否直观
(2)Web系统的主要部分是否可通过主页存取
(3)系统是否需要站点地图、搜索引擎或其他的导航帮助
(4)Web应用系统的页面结构、导航、菜单、连接的风格是否一致
(5)Web应用系统导航帮助要尽可能地准确。Web应用系统的层次一旦决定,就要着手测试用户导航功能。
2、图形测试
一个Web应用系统的图形包括图片、动画、边框、颜色、字体、按钮等。
(1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间;
(2)Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面; (3)验证所有页面字体的风格是否一致;
(4)背景颜色应该与字体颜色和前景颜色相搭配;
(5)图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。
3、内容测试
检验Web应用系统提供信息的正确性、准确性和相关性。
4、整体界面测试
整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。
在对整体界面的测试过程中,其实是一个对最终用户进行调查的过程。
一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。
该项目的可用性测试由本人手动测试,没有使用工具。
软件可靠性测试,是指为了满足用户对软件的可靠性要求,基于用户使用模型对软件进行测试,发现并纠正软件中的缺陷提高软件的可靠性水平,并验证软件能否达到用户可靠性要求的软件测试方法。
1、用户权限限制: 软件是否按功能模块划分用户权限,权限划分是否合理,考察超级用户对各个用户的权限管理是否合理,包括修改用户的登录资料等;
2、用户和密码封闭性: 软件对用户名和密码有无校验,有无保护措施,尤其对密码有无屏蔽功能;
3、系统对用户错误登录的次数限制:
软件对用户错误登录有无次数限制,一般做法是连续三次登录失败就退出系统;
4、留痕功能:
软件是否提供操作日志,比如某用户登录的时间,查询、修改或删除的动作以及离开的时间等;
5、屏蔽用户操作错误:
考察对用户常见的误操作的提示和屏蔽情况,如可否有效避免日期的录入错误或写入无效的日期;
6、错误提示的准确性:
当用户操作错误时,能否有准确清晰的提示,使用户知道造成错误的原因。例如当用户未输入完有效信息时存盘,系统应当给出关于未输入项的提示;
7、错误是否导致系统异常退出: 考察软件运行的稳定性,当软件发生一般错误或严重错误时,软件是否会自动退出;
8、数据备份与恢复手段:
主要针对有数据存储需要的软件,有的软件依靠数据库操作系统本身的备份与恢复机制,这需要用户具备一定的操作知识;好的软件会提供备份与恢复的操作,不需要用户直接对数据库系统进行操作;
9、输入数据有效性检查: 当用户输入的数据有错时,软件应能判断数据的有效性,避免无效数据的生成;
10、异常情况的影响:在程序运行过程中进行掉电等试验,考查数据和系统的受影响程度;若受损,是否提供补救工具,补救的情况如何;
11、网络故障对系统的影响:当网络中断连接时,是否会造成数据的丢失;
负载测试
负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。
负载测试使用工具:LoadRunner
网站:localhost:8080/newitcaststore/admin/
1、现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。
2、Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。
3、为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。
4、当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
5、服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
本报告主要对整个测试过程和结果进行总结。整个测试过程包括系统的可行性测试、可靠性测试以及安全性测试,软件缺陷主要集中在安全性测试中的“登录校验”,发现了3个严重缺陷。此外在网站的可行性测试中,发现了2个一般缺陷。
由于“电子书城后台管理系统”存在较多严重缺陷,尤其有关登录的安全性问题,这些缺陷是用户明确提出的需求,因此该系统未通过本次是测试,不能予以发布。