|
知识路径: > 电子商务系统程序设计基础 > 电子商务系统的测试 >
|
相关知识点:68个
|
|
|
|
以上主要从软件测试的角度介绍电子商务系统的测试,基于电子商务系统是基于Internet的信息系统,因此,其测试对传统的软件测试提出了新的要求,即基于Web的系统测试。不但需要检查和测试系统是否按照设计的要求运行,还要从用户的角度出发,考虑客户端兼容性、Web安全性和可用性等等。下面从Web系统测试的角度,从界面测试、功能测试、数据库测试、帮助系统测试等多个方面介绍电子商务测试的内容。
|
|
|
|
用户界面测试用于核实用户与软件之间的交互,检查用户界面中的设计是否合乎用户的期望或要求,界面中的对象是否按照预期的方式运行。对所有用户界面测试活动来说,都需要有外部人员最好是最终用户的参与。界面测试主要针对界面的正确性、导航性、易用性、协调性、规范性及独特性几个方面进行。界面测试首先要保证网站中每个页面为用户提供的功能和内容都是准确无误的,确保用户得到的信息是准确可靠的。对于Web应用系统来说,一个良好的导航能使用户方便快速地访问到他们所需的信息,因此,要对界面的导航性进行测试,这一点对于信息量大且结构复杂的网站尤为重要。导航测试的主要目的是确保用户能凭直觉方便快速地找到他们所需要的信息,提高网站的访问效率。这也是提高网站易用性的目的所在。为了使用户在访问网站时能舒适地享受系统提供的各种功能和服务,界面的美观与协调也是不可忽视的。通常,界面设计都应遵循业界的标准,其规范化程序越高,系统的易用性相应就越好;但在遵循统一标准的基础上,也要突出自己的个性,具有自己独特风格的界面给人印象深刻,能够吸引更多的用户,尤其在商业软件流通中有着很好的宣传作用。有关详细测试内容见下表。
|
|
|
|
|
|
|
|
功能测试指测试软件各个功能模块是否正确,逻辑是否正确。对于电子商务系统而言,功能测试主要是确保系统与用户之间的交互功能能正确执行,可从以下几方面进行测试。
|
|
|
|
链接测试要保证Web应用系统所有的页面能按预期的方式正常工作。包括:
|
|
|
.测试链接的页面是否存在,且所链接的页面内容能否正确显示;
|
|
|
|
|
|
|
Cookies通常用来存储用户信息,如用户名、口令等。Cookies测试主要检查Cookies是否正常工作,是否安全及刷新对Cookies的影响等。如果系统使用了Cookies,测试人员需要对它们进行以下检测:
|
|
|
|
|
|
|
|
.如果使用Cookies来统计次数,需要验证次数累计是否正确。
|
|
|
|
在电子商务系统中,用户与系统之间的信息交互大多通过表单来完成,如用户注册、登录、信息提交等。因此,必须测试表单是否能正确提交,对于非法的输入,系统能否正常工作等。表单测试可以包含以下内容:
|
|
|
|
.是否能根据业务规则对用户输入数据进行校验,且校验功能能否正常工作;
|
|
|
.对可能出现的输入错误是否采取相应的处理措施,如自动纠正日期的格式,为有严格约束的内容提供选项等;
|
|
|
.对用户输入信息的显示是否按预期要求,如密码显示为“*”等;
|
|
|
.能否正确地更新信息,页面刷新后用户之前填写的信息是否还存在;
|
|
|
.对某些数据项是否要限制字数,是否有不能包含的符号等;
|
|
|
|
.返回信息(提交结果)能否正常显示,提示信息(如提交失败的原因等)表达是否正确。
|
|
|
|
交易功能测试主要包括产品选择、签约过程、在线支付及产品交付等方面的测试如:
|
|
|
|
.对订单中商品的删除和修改操作能否正常执行并正确显示;
|
|
|
|
|
|
|
|
|
|
.在产品未交付之前,是否允许随时更改产品的交付方式;
|
|
|
.对意外情况的处理是否按预期要求进行(如由于网页发生错误而中断交易)等。
|
|
|
|
数据库为电子商务系统的管理、运行、查询和实现用户对数据存储的请求等提供空间,网站通常把产品和用户信息输入在数据库内,以此来简化和加快搜索。数据库测试一方面是指对数据库本身的完整性进行测试,包括:
|
|
|
(1)数据完整性。主要检测数据的损坏。规定适当的检查点可以减轻数据损坏。例如,保留和检查每天的事务日志便于跟踪数据库的改变。
|
|
|
(2)数据有效性。数据有效性确保把正确的信息提供给客户,把正确的信息回传到数据库中。一般来说,数据的检测比率高于应用程序本身的检测比率。其中的一个检测方法是查看工作流并在变化点上检查数据库,包括隔离改变数据库的操作并检查改变内容是否正确。
|
|
|
(3)数据操作。我们需要从两种级别上测试用户操作:管理员功能和用户功能。数据库管理员可以执行一些不提供给网站客户的受限操作。
|
|
|
数据库的完整性原则以及数据的合理性,如主码完整性、外码完整性、数据的类型、长度、索引的合理性等。这部分测试应将数据库和数据库进程作为一个子系统来进行测试,并不将测试对象的用户界面用作数据的接口。另一方面,要将数据库与应用系统相结合,对数据一致性、输出结果及数据库容量进行测试。用户提交的表单信息如果不正确,则可能导致数据一致性出错;而网络速度或者程序设计如果存在问题,则可能造成输出错误;同时,还要考虑到系统及数据库在给定时间内能够持续处理的最大负载及工作量。
|
|
|
|
安全性测试是有关验证应用程序的安全服务和识别潜在安全性缺陷的过程。安全性测试并不最终证明应用程序是安全的,而是只用于验证系统的防范能力,检验系统的安全机制和保密措施的有效性。目前几乎没有可用的工具来彻底测试各个安全方面。由于应用程序中的功能错误也可代表潜在的安全性缺陷。对于电子商务系统这类基于Web的应用系统,安全性特别是系统级别的安全性尤为重要。安全性的测试可从以下几个方面来设计测试用例:
|
|
|
(1)在向缓冲区写入数据时,是否存在缓冲区溢出的现象?
|
|
|
(2)站点能否正确鉴别用户?有效的用户名和密码能否正常登录?
|
|
|
|
|
|
|
|
|
(9)对于通过telnet或是第三方网络提供商登录的用户,应用程序是否有病毒保护程序?
|
|
|
(10)在应用程序服务器或数据中心检测到病毒时是否采取了相关的处理措施?处理是否有效?
|
|
|
(11)站点如何处理访问权限,是否服务器端所有目录的存取都需要经过授权?
|
|
|
|
(13)是否可通过直接拨号进入数据库来访问和篡改系统?
|
|
|
(14)非保密数据或源代码中是否泄漏了某些需要保密的重要信息?
|
|
|
|
|
|
通常,安全测试由测试人员模拟非法入侵者,采用各种方法冲破防线。例如,想方设法截取或破译口令;故意使系统出错,利用系统恢复的过程非法入侵;企图通过浏览非保密数据,获取所需信息等。
|
|
|
|
安装测试是为了检测在安装过程中是否有误、是否易操作,安装后是否可立即正常运行,包括在正常情况(如首次安装、升级、自定义或完整安装等)和异常情况(如磁盘空间不足、缺少目录创建权限等)下的安装。具体内容包括检测系统的每一个部分是否齐全;硬件的配置是否合理;安装中需要产生的文件和数据库是否已产生,其内容是否正确等。此外,安装测试还要考虑安装程序在不同厂家的硬件上、支持不同评议的新旧版本平台上是否都能正确运行。具体可从以下几个方面展开:
|
|
|
(1)与用户的运行环境基本一致的平台上首次安装系统,检验在自动安装和手工配置两种情况下是否都能够正确实施安装;系统是否能正常启用、运行;
|
|
|
(2)检查产品安装界面上的提示是否正确,是否能正确指导用户完成安装过程;
|
|
|
|
(4)是否能让用户进行自定义安装,对某些组件进行安装选择;
|
|
|
(5)对系统默认安装路径及用户自己指定的路径,安装是否都能正常进行;
|
|
|
(6)检验对于不存在的路径,安装程序能否创建该路径并继续安装;
|
|
|
(7)对于系统的配置,安装程序是否根据当前环境提供默认或推荐配置;
|
|
|
(8)程序安装完成后,需要产生的文件和数据库是否已自动生成;
|
|
|
(9)是否在开始—程序菜单中和桌面上生成了对应的快捷方式或程序组;
|
|
|
|
(11)测试系统的升级过程能否正常运行,相关数据文件及注册信息能否及时刷新;
|
|
|
(12)测试系统是否提供自动卸载工具,如果提供,进一步检查卸载后所有文件及相关注册信息是否全部删除;
|
|
|
(13)考察安装该系统是否对其他的应用程序造成影响;
|
|
|
(14)当出现磁盘空间不足等意外情况时,安装程序能否自动取消已执行的操作,或采取其他处理措施,并显示相应的出错信息等。
|
|
|