




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5 章 电子商务网站测试5.1 实训项目一 程序及数据库测试5.1.1 实训目的与要求通过学习与实训,要求学生理解网站测试的重要性,掌握程序及数据库测试的内容与方法,学会对具体的电子商务网站进行分析与测试。5.1.2 实训预备知识网站发布前要进行细致周密的测试,以保证正常浏览和使用。主要测试内容有以下几个方面。(1) 服务器稳定性、安全性。(2) 程序、数据库测试以及网页兼容性测试,如浏览器、显示器。(3) 文字、图片、链接是否有错误。网页制作完成之后,对网页内容和网站整体性能进行有效的测试是十分必要的。如今,网页的更新速度越来越快,更新的内容也越来越多,网页设计制作过程中难免会出现一些错误,但关键是要采取有效的方法和措施对网站进行测试,及时发现错误并更正。在网站开发、设计、制作过程中,对网站系统的测试、确定和验收是一项重要而富有挑战性的工作。网站系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户端的显示是否正常。最重要的是,还要从最终用户的角度进行安全性和可用性测试。然而,Internet 和Web 网站的不可预见性使网站系统的测试变得很困难,因此需要为网站系统的测试研究新的方法和技术。1. 服务器稳定性测试假设一个企业准备发布新的电子商务网站,其软硬件的设备与设施都已就绪。这个网站看上去非常漂亮,所有的链接和图片都正确无误,但真正的问题是:它的后台服务在访问高峰时能否顶得住。这需要做严格的负荷测试。1) 网站的负荷测试目的为了能预测和防止系统瘫痪以及不可接受的服务迟缓,Intel 开发了严格的负荷测试程序,它针对以下5项关键目标。(1) 确定一个应用能够支持的并发用户数和交易数的上限。(2) 证明一个应用能够承受期望的每小时或每天的并发用户数和交易数。(3) 证明一个应用和设施能够不停机地运行(247 模式)。(4) 证明后台服务器能够承受期望的连接数。(5) 证明单个的业务交易能够在合理的时间内完成。电子商务网站设计与管理1541542) 网站负荷测试的6 大测试程序为了有效地评估上述5 个目标,Intel 开发了包含6 个关键测试的负荷测试程序,它们分别是: 脚本验证/数据完整性测试。 单步测试。 性能空间测试。 持续测试。 数据库连接测试。 时间测试/业务实例。每个测试可看做是对相互关联的系统和服务的行为与性能的深入观察。(1) 脚本验证/数据完整性测试。脚本验证测试的主要目的是保证测试是否按照设计的要求进行的。除了证实所记录的测试步骤可以无错误地重复外,还要进行手工检验数据并在后台进行数据完整性测试。一旦设计完成,将负荷测试计划记入一个脚本,先运行这个脚本并确认它是按要求运行的,然后检查后台服务器上记录的日志。要查看互联网服务器日志、性能监督日志以及所有用来运行脚本的工具日志。当脚本在某个表中输入了一些东西,为了确认已经正确地输入数据库中,需要对数据库进行查询,还要注意检查是否有请求失败、超时或通信出错。除了检验脚本是被正确地执行外,该测试对确定运行脚本时产生的瓶颈和错误位置非常有用。(2) 单步测试。单步测试用来确定服务器允许的最大并发用户数和交易数。该测试模拟不断增加并发用户数和交易数直至系统崩溃。一旦脚本设计好以后,第一次运行脚本应该反映未来6 个月内的期望的负载情况。这是所谓的“1X负荷”。从1X负荷开始,增加到2X、4X,以此类推。随着这种指数的增长,到达某一点时,后台服务器的记录会显示系统已经不能承受了。其症状是:互联网服务器的缓存命中率大增,互联网服务器的处理器占用率达到峰值,ASP日志记录的错误和连接中断数不断增加。(3) 性能空间测试。因为一周内对服务器的访问是不可能均匀分布的,还需利用性能空间测试来确定一个应用和系统在不同寻常的大访问量时能够维持期望的交易量。该测试让公司确定在长时间的高访问量下服务器的负荷、性能、内存的使用情况和应用软件的稳定性,还可以确定是否具有满足未来客户需求的合适的应用软件架构和基础设施。(4) 持续测试。运行持续测试将证明应用在实际环境下能够持续工作。持续测试的结果可看出应用和设施在短期及长期的支持能力。它还有助于预示客户在公司网站上的感受。通过长时间的运行,该测试有助于发现小的、逐渐积累的问题,使公司能够在它们变成大问题之前将问题解决。(5) 数据库连接测试。数据库连接测试确定数据库服务器是否能够支持期望的连接数。通过模拟期望的用户第5 章 电子商务网站测试155155并发连接数和交易量,测量服务器的负荷、性能、内存使用情况和应用软件的稳定性。该测试的结果将确定数据库服务器能够持续处理的负荷的上限、ASP 连接池是否正确工作以及还有什么措施来优化数据库的性能。数据库连接是非常困难的。因为各种数据库的格式都不一样,开发者必须对他们所开发的数据库产品的底层API 有深刻的了解。因此,能处理多种数据库的通用的API 就应运而生了ODBC(Open Database Connectivity)。ODBC是人们创建通用API的早期产物,在程序中可以使用相同的代码访问不同的数据产品。因此有许多种数据库(如Access、MSSQLServer、Oracle、Informix 等)都遵从了这种标准,被称为ODBC 兼容的数据库。ODBC 的具体作用如图5.1 所示。图5.1 ODBC 的具体作用一般来说,ODBC是由一套扩展的DLL(Dynamic Link Library,动态链接库)组成,DLL提供了标准的数据库应用程序设计接口。而ODBC 是建立在标准化的SQL(Structured QueryLanguage,结构化查询语言)之上。所以,通过ODBC 和SQL 就可以编写独立于任何数据库产品的数据访问程序。 用ODBC连接数据库。ODBC中提供三种DSN,它们的区别很简单。用户DSN 只能用于本用户。系统DSN 和文件DSN的区别只在于连接信息的存放位置不同:系统DSN存放在ODBC 储存区里,而文件DSN 则放在一个文本文件中。在ASP 中使用它们时,写法如下。A.链接SQL Server用系统DSN:connstr=DSN=dsnname;UID=xx;PWD=xxx;DATABASE=dbname用文件DSN:connstr=FILEDSN=xx;UID=xx;PWD=xxx;DATABASE=dbname还可以用连接字符串(从而不用再建立DSN):connstr=DRIVER=SQL SERVER;SERVER=servername;UID=xx;PWD=xxxB.链接Access用系统DSNconnstr=DSN=dsnname(或者为:connstr=DSN=dsnname;UID=xx;PWD=xxx)电子商务网站设计与管理156156用文件DSN:connstr=FILEDSN=xx还可以用连接字符串(从而不用再建立DSN):connstr=DRIVER=Microsoft Access Driver;DBQ=d:abcabc.mdb 缺陷。ODBC 含有大量的低级的调用,因此开发ODBC 应用程序还比较困难。开发者不得不将大量的精力花在底层的数据库通信中,而不能专注于他们所要处理的数据。 OLE DB。多年以来,ODBC已成为访问客户端/服务器数据库的标准。ODBC 提供了基于标准的接口,接口要求SQL 处理功能,并被优化用于基于SQL 的方法。然而,如果要访问不使用SQL 的非关系数据源(例如,不按照关系存储数据的Microsoft ExchangeServer)中的数据,情况会如何呢?OLE DB建立在ODBC之上,并将此技术扩展为能提供更高级数据访问接口的组件结构。此结构对企业中及Internet 上的SQL、非SQL 和非结构化数据源提供一致的访问(实际上,在访问基于SQL 的数据时,OLE DB 仍使用ODBC,因为对于SQL 来说,它是最优结构。)。OLE DB 由3个组件构成:数据使用者(例如,一个应用程序)、包含并公开数据的数据提供程序以及处理并传输数据的服务组件(例如,查询处理器、游标引擎)。OLE DB 是一个针对SQL 数据源和非SQL 数据源(例如,邮件和目录)进行操作的API。OLE DB 为C 和C+程序员及使用其他包含C样式函数调用语言的程序员提供绑定。有一些语言(例如,VB 和VBScript)不提供指针数据类型(地址变量)。因此,这些语言不能使用C 样式绑定,而且不能直接调用 OLE DB。在此基础上,Microsoft 推出了另一个数据访问对象模型:ADO(第一个是DAO)。ADO采用基于DAO 和RDO 的对象,并提供比DAO 和RDO 更简单的对象模型(尽管会产生一些冗余的功能,如现在进行一项操作时可以用不止一种方法)。ADO 中的对象层次结构比DAO中的更平缓。ADO 包含一些简化对数据存储区数据的访问任务的内置对象。而DAO 是第一个面向对象的接口,DAO 模型是设计关系数据库系统结构的对象类的集合。它们提供了完成管理一个关系型数据库系统所需的全部操作的属性和方法,这其中包括创建数据库,定义表、字段和索引,建立表间的关系,定位和查询数据库等。 数据库链接实例。dim connset conn = server.createobject(adodb.connection)conn.open = provider=microsoft.jet.oledb.4.0; & data source = & server.mappath(./db/bbs.mdb)其中./db/bbs.mdb 是数据库存放的相对路径。如果数据库和ASP 文件在同一目录下,你只要这样写就可以了:dim connset conn = server.createobject(adodb.connection)conn.open = provider=microsoft.jet.oledb.4.0; & data source = & server.mappath(bbs.mdb)第5 章 电子商务网站测试157157有许多初学者在遇到数据库连接时总是会出问题,然而使用上面的驱动程序,只要数据库路径正确就不会出问题了。(a) 建立MdbRecordset 对象。MDB数据库是一个完整的数据库,内部可能含有若干个数据表,在此函数中,Connection 的作用是连接数据库,Recordset 的作用是打开数据表。Function CreateMdbRecordset(数据库文件名, 数据表名或Select语句)Dim conn,Provider,DBPath建立Connection 对象Set conn = Server.CreateObject(ADODB.Connection)Provider=Provider=Microsoft.Jet.OLEDB.4.0;DBPath = Data Source= Server.MapPath(数据库文件名)打开数据库conn.Open Provider DBPathSet CreateMdbRecordset = Server.CreateObject(ADODB.Recordset)打开数据表CreateMdbRecordset.Open 数据表名, conn, 2, 2End Function(b) 建立带密码的MDB 数据库的Recordset 对象。它的建立方式与建立不带密码的MDB 数据库的Recordset 对象类似,只是多了一个密码参数,即在与数据库连接时,必须给出密码信息。Function CreateSecuredMdbRecordset( 数据库文件名, 数据表名或Select 语句,password )Dim conn,Provider,DBPath建立Connection 对象Set conn = Server.CreateObject(ADODB.Connection)Provider = Provider=Microsof.Jet.OLEDB.4.0;DBPath = Data Source= Server.MapPath(数据库文件名)连接数据库,注意要带有密码参数conn.Open Provider DBPathJet OLEDB:Database Password=passwordSet CreateSecuredMdbRecordset = Server.CreateObject(ADODB.Recordset)打开数据表CreateSecuredMdbRecordset.Open 数据表名, conn, 2, 2End Function(6) 时间测试/业务实例。时间测试/业务实例测试用来确定单个业务交易能够在合理的时间内完成。这是个需要企业其他部门和IT 合作测试的例子,它是连接IT 和业务的桥梁。运行这个测试将记录下平均完成每个交易所需的时间,从零负荷、平均负荷到突发重负荷和重负荷。3) 网站负荷测试的两点局限负荷测试方法和工具在过去的一年取得了很大的进步,然而,仍然存在一些需要指出的局限。因为当进行负荷测试时,已经建立了一个代表将来对服务器的要求的模型,它是根据公司对用户在网站上的行为估计而定。电子商务网站设计与管理158158虽然与互联网的连接因调制解调器的速度、局域网连接和网络延迟而不同,但在测试模型中,所有虚拟用户都与互联网完美地连接:很高的带宽和最低的网络延迟。因此,除非这些变化能够在测试中进行模拟,否则这些模型对最终用户的感受的预测是有局限的。要实现真实世界的测试条件的最佳方法是建立与访问者有效的反馈机制。这样可以收集到用户的看法而不是测得的因特网性能,从而改进设施来满足用户的要求。2. 安全性测试Web 应用系统的安全性测试主要有以下几个方面。(1) 现在的Web 应用系统基本采用先注册后登录的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否区分大小写、可以尝试多少次的限制、是否可以不登录而直接浏览某个页面等。(2) Web 应用系统是否有超时的限制,也就是说,用户登录后如果一定时间内没有操作任何页面,是否需要重新登录才能正常使用。(3) 为了保证Web 应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。(4) 当使用了加密算法时,还要测试加密是否正确,同时要检查信息的完整性。(5) 服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以要测试没有经过授权就不能在服务器端放置和编辑脚本的问题。基于Web 的系统测试与传统的软件测试既有相同之处,也有不同的地方,这对软件测试提出了新的挑战。基于Web 的系统测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器端显示是否正常,还要从最终用户的角度进行安全性和可用性测试。3. 程序及数据库测试1) 程序测试在网页制作软件Dreamweaver 中,“Check Target Browser”可以自动检测该网页在多种不同版本的浏览器Internet Explorer 2.06.0 和Netscape 2.05.0 中的支持情况,并会自动生成一个报告详细检查结果的HTML 文件,并且调用默认浏览器。此检查报告十分详细,不仅指出每个错误在文件中的详细位置,而且说明了错误的原因。检查功能还支持对JavaScript 和DHTML 的检查,可以解决使用FrontPage制作的网页在Netscape 下浏览往往显得杂乱无章的问题。用Dreamweaver 软件制作的网页的层不太适合Netscape 调用,最好还是先将它转换成为表格。这个问题用以上方法是检查不出来的。对于拼写也可以使用程序检查,如在FrontPage 中打开检查拼写的网页,然后依次选择菜单中的“工具”、“拼写与检查”或按F7键,然后FrontPage 2000 会报告检查结果,可以立即予以更改修正。2) 数据库测试在网站应用技术中,数据库起着重要的作用。数据库为Web 应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web 应用中,最常用的数据库类型是关第5 章 电子商务网站测试159159系型数据库,它可以使用SQL 对信息进行处理。在使用了数据库的Web 应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的。针对这两种情况,可分别进行测试。5.1.3 实训步骤1. 数据库测试(1) 安装SQL 数据库连接软件(SQL execute helper tool)。(2) 打开 SQL 数据库连接软件,出现如图5.2 所示的界面,输入 HOST IP、User、Password,单击Connect 按钮即可测试SQL 数据库是否连接成功。图5.2 SQL数据库连接测试界面2. 程序测试1) 端口扫描在客户端和服务器端进行一次端口扫描,找出那些已打开但并不需要的通信端口。各种服务,如FTP、NetBIOS、echo、gotd 等使用的端口是引起安全问题的典型因素。2) 检查用户账户将目光转移,看看操作系统、任何数据库以及程序自身的账户,特别注意guest 账户、默认账户或者简单密码账户以及不需要的用户ID。3) 检查目录许可在关闭了无用端口并禁用了多余的账号后,仔细检查一下程序所用到的数据库和服务电子商务网站设计与管理160160器目录的权限设置。很多攻击利用了配置失误的权限,这种方法经常被用来攻击Web 服务器。4) 对数据库也进行和上面同样的设置文件系统不是唯一因权限设置不当而受到攻击的对象,大多数的数据库系统也有很多安全漏洞。它们的默认权限设置通常不正确,如打开了不必要的端口、创建了很多演示用户。加强数据库安全的措施与操作系统一样,要关闭任何不需要的端口、删除或禁用多余的用户,并只给用户完成其任务所必需的权限。5.1.4 思考与练习1. 思考题(1) 如何注意网站的安全性?(2) 服务器的稳定性测试指的是什么?在IIS 和Apache 中应如何设置以保证服务器的稳定性?2. 练习题浏览某一个电子商务网站,测试其数据库安全性,并撰写测试报告。5.2 实训项目二 网页测试5.2.1 实训目的与要求通过学习与实训,学生应了解网页测试的内容,掌握网页测试的方法与技巧。5.2.2 实训预备知识1. 网页测试的内容(1) 测试网页对浏览器的兼容度。浏览器的测试,是指测试网页在不同浏览器及其不同版本下的运行和显示状况。在实际工作中,用户会使用不同的浏览器登录互联网。通过此项测试和修改,可以保证网页在大多数的浏览器中都能正确显示。测试结果既给出网页在IE 浏览器和Netscape 浏览器下的显示报告,还详细统计网页中哪些HTML 语法不被浏览器支持以及改善的建议。(2) 分辨率测试。显示器在1024768 像素与800600 像素情况下网页有哪些变化。(3) 操作系统测试。测试在不同的操作系统下,网页显示效果是否一致。(4) HTML 语法检查。不正确的HTML 语法会影响浏览器的编译速度,而且可能会导致页面在容错性差的浏览器中出错。(5) 链接情况检查。帮你检查页面上所有链接是否正确,有没有死链接。当页面创建了很多链接时,用它来帮助检查链接的正确性。(6) 下载时间测试。测试网页在不同连接速度下的下载时间,并且指出被测试页面所链接的文件(如图片文件、框架页面、样式表文件、脚本文件等)中哪个过于庞大。第5 章 电子商务网站测试161161(7) 拼写检查。检查网页上的中英文文法错误。下面重点介绍一下链接测试与兼容性测试。1) 链接测试链接是网站系统的一个主要特征,它是在页面之间切换和引导用户去一些地址求知的页面的主要手段。链接测试可分为3 个步骤:首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证网站应用系统上没有孤立的页面。所谓孤立页面是指没有链接指向该页面,只有知道正确的URL 地址才能对其进行访问。链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个网站系统的所有页面开发完成之后进行链接测试。下面是网页链接速度测试的代码。tim=1setInterval(tim+,100)b=1var autourl=new Array()autourl2=/default.aspautourl1=/down/default.aspfunction butt()document.write()for(var i=1;iautourl.length;i+)document.write(=)document.write()butt()function auto(url)document.forms0url+b.value=urlif(tim200)document.forms0txt+b.value=链接超时elsedocument.forms0txt+b.value=时间+tim/10+秒b+function run()for(var i=1;iautourl.length;i+)document.write()run()电子商务网站设计与管理1621622) 客户端兼容性测试(1) 平台测试。市场上有很多不同的操作系统类型,最常见的有Windows、UNIX、Linux 等。Web 应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。因此,在Web 系统发布之前,需要在各种操作系统下对Web 系统进行兼容性测试。(2) 浏览器测试。浏览器是Web 客户端最核心的构件,来自不同厂商的浏览器对Java、JavaScript、ActiveX、Plug-ins 或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业银行2025聊城市秋招笔试价值观测评题专练及答案
- 建设银行2025克拉玛依市秋招半结构化面试题库及参考答案
- 建设银行2025酒泉市信息科技岗笔试题及答案
- 文化创意产业园区建设项目申请报告:2025年市场营销策略
- 演出经纪人之《演出经纪实务》通关试卷提供答案解析(轻巧夺冠)附答案详解
- 农业银行2025抚顺市小语种岗笔试题及答案
- 2025年教师招聘之《小学教师招聘》通关试题库附参考答案详解(典型题)
- 2025年纪检监察干部队伍教育整顿学习教育环节考核测试题(附答案)
- 教师招聘之《幼儿教师招聘》题库检测模拟题及参考答案详解一套
- 教师招聘之《幼儿教师招聘》考试黑钻押题含答案详解(黄金题型)
- CFG桩复合地基沉降及承载力自动计算
- 浅析加强物资采购质量的措施
- 青岛版二年级下册万以内数的加减法竖式计算300题及答案
- 2024年天津港集团有限公司招聘笔试参考题库附带答案详解
- 传统体育运动在小学课堂中的应用课件教案
- 类脑计算与神经网络
- 手术授权申请表
- 2023年度全国出版专业技术人员职业资格考试-基础知识(初级)试题
- 2023届高考语文备考之整句与散句变换(10道真题含答案)
- 灌注桩后注浆施工记录
- 食品样品的采集和预处理-食品样品的采集与制备
评论
0/150
提交评论