摘要:介绍了当前电子商务应用领域的主要结构,以及基于此结构的软件测试技术,采用局部分层测试和系统整体测试相结合的方法是目前值得介绍堵塞新做法,它既从局部出发,按照软件的三层结构分别对应用系统的每一个层面进行测试,又从整体出发,系统地对整个应用软件进行完整测试,保证了软件开发后的性能要求和用户的可用性。

  关键词:电子商务;软件测试

  国际互联网的快速增长,使WEB技术对商业、工业、银行、财政、教育、政府和娱乐及我们的工作和生活产生了深远的影响。许多传统的信息和数据库系统正在移植到互联网上,电子商务迅速增长。因此,电子商务应用系统的测试也变得十分重要,它对软件测试提出了新的挑战,要求采用新的测试方法展开软件测试工作。这种对应用系统的测试不但能检查是否满足设计的要求,还需要能测试系统每个层面是否正常,确保系统的整体性能、安全性和可用性满足需要。

  一、典型系统结构

  随着电子商务的兴起,Web方式的应用系统发展迅速,它将成为电子商务技术领域的主流。在电子商务应用系统中,目前普遍采用的是三层C/S结构,即表示层、业务层和数据层。这种结构使软件测试人员能采用“局部分层测试”和“系统整体测试”想结合的方法,对应用系统进行测试。即先对每一层进行独立的测试,再开展系统整体测试,这样更容易发现应用系统缺陷和错误。如果仅仅依赖系统测试,要确定存在问题的特定部件十分困难。

  二、局部分层测试

  1、表示层。测试表示层是检查并应用程序的前端是否存在错误。本层次是应用系统的外表,因此,表示工作对建立一个健壮的、高质量的应用系统至关重要。

  (1)内容测试。内容测试用来检验Web应用系统提供信息的正确性、准确性、相关型等人机界面元素,信息的正确性是指信息是可靠的还是误传的,例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确型是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsft Word的“拼音与语法检查”功能;信息的相关性是指是否在当前也面可以找到与当前浏览信息相关的信息列表或入口,也是一般Web站点中所谓“相关文章列表”。此外,还要检查字体类型、屏幕布局、色彩、图形分辨率及其他直接会影响终用户体验的特性。

  (2)Web站点结构。测试Web站点的结构是检查结构上存在的错误,发现无效的连接。链接测试可分为三个方面。首先,测试所有链接是否按指示的安阳确实链接到了该链接的也面;其次,测试所连接的页面是否存在;后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。

  (3)用户环境。测试用户平台和浏览器。市场上有很多不同的操作系统平台,常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,可能会发生兼容型问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能在会运行失败。此外,要测试浏览器。浏览器是Web客户端核心的构件,来自不同厂商的浏览器对Java、JavaScript、ActiveX、plug-ins或不同的HTML规格有不同的支持。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。操作系统(OS)和浏览器的组合非常多,不仅要测试每一个浏览器的配置,还要测试同一个浏览器的不同版本。

  2、业务层。业务层测试的重点是发现应用系统的业务逻辑中的问题。测试业务逻辑层与测试单机程序非常类似,通过测试去检查应用系统是否满足系统性能方面的需求。

  (1)性能测试。主要负载测试,即带负载情况下的响应时间和吞吐率。负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。此外,还要进行夜里测试。压力测试是测试系统的限制和故障恢复能力,也是测试Web应用系统会不会崩溃,在什么情况下会崩溃。

  (2)数据验证。测试从用户采集到的数据,通常是以表单形式。当用户给Web应用系统管理员提交信息时,需要使用表单操作,例如用户注册、登录、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果表单只能接受指定的某些字符,测试时可以跳过这些字符,看系统是否会报错。如果Web应用系统使用Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上。

  (3)业务测试。测试系统的业务处理过程的正确性,其中包括信用卡处理、电子邮件验证以及消费税计算等。电子商务系统必须在全部的时间里正确处理业务,无一例外。因此,要通过测试确保业务处理的正确性。