web测试
软件测试体系架构设计
一、体系架构
1.C/S:客户端+服务器端,如QQ、单机版记事本、office等,所用语言:VB、C++、C、C#、JAVA、PB、D…等数组语言,C和S都是自己测,且复杂度较高。扩展性差。
补:软件质量包括五种质量:内部质量、外部质量、过程质量、使用质量、情感质量(从使用质量提取出来的,易用性的、用户体验的老师称为情感质量)。
B/S:浏览器+服务器,S如tomcat、IIS,所用语言:HTML、ASP、PHP、JSP等脚本语言,B和S都是成熟的产品,不需测。范围广。扩展性好,便于用户访问,但是安全性较差。可看到后缀,根据后缀知道其架构,即知道什么语言开发,可能使用的服务器是什么,可能使用的数据库是什么,可能使用的服务器的操作系统是什么。便于测试。
机房包括:HTTP(只做请求的转发,不做请求的具体处理,做负载均衡的)、Web Server(网络服务)、APP Server(应用服务)、DB Server(数据库服务器)。
嵌入式应用系统:如投影仪,里面装有数控类的代码,也是程序,对其需用模拟器来进行测试,称为嵌入式系统。
如今很多企业都是C/S和B/S合并起来做,核心关键的用B/S做,对外公布的用C/S做,两者之间留接口即可。涉及军工类的都是C/S架构。
2.web服务器:在B/S架构开发平台:J2EE(Java开发,包括:J2EE企业级,是C/S系统;J2ME微型平台,是嵌入式系统;J2SE标准平台,是桌面型系统、.net(C#,微软开发,是站点开发,应用于电子商务)、LAMP(php开发,Linux+Apache+MySQL+php)
Windows:后台C#, 前台ASP/ASP.NET
SUN: 后台Java,前台jsp
常用的web服务器:Apache、Tomcat、IIS、jboss、Resin、weblogic、WebSphere
|
Apache |
Tomcat |
IIS |
Jboss |
Resin |
WebLogic |
WebSphere |
公司 |
Apache(70%占有率) |
微软 |
RedHat |
CAUCHO |
Oracle |
IBM |
|
是否开源 |
开源 |
收费 |
|||||
端口号 |
80 |
8080 |
80 |
8080 |
8080 |
7001 |
8080 |
3.DB Server数据库服务器:全部基于SQL语言(结构化查询语言),包括:MySQL、SQLServer、Oracle、Sybase、DB2(后三者过了安全认证即五星认证,较厉害)
|
MySQL |
SQLServer |
Oracle |
Sybase |
DB2 |
公司 |
Oracle |
微软 |
Oracle甲骨文 |
|
IBM |
是否开源 |
半收费 |
|
收费 |
|
高端企业 捆绑业务 |
端口号 |
3306 |
1433 |
1521 |
|
|
|
开放性 |
伸缩性 |
安全认证 |
性能 |
客户端支持及应用模式 |
易用性 |
使用风险 |
SQL Server |
只能在windows上运行,没有丝毫的开放性,操作系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据库。 |
并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 |
没有获得任何安全证书。 |
多用户时性能不佳 |
C/S结构,只支持windows客户,可以用ADO、DAO、OLEDB、ODBC连接。 |
操作简单,但只有图形界面。 |
完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容。 |
Oracle |
能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 |
并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。 |
获得最高认证级别的ISO标准认证。 |
性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。 |
多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。 |
较复杂,同时提供GUI和命令行,在windowsNT和unix下操作相同。 |
长时间的开发经验,完全向下兼容。得到广泛的应用。完全没有风险。 |
Sybase |
能在所有主流平台上运行(包括 windows)。 但由于早期Sybase与OS集成度不高,因此VERSION11.9.2以下版本需要较多OS和DB级补丁。在多平台的混合环境中,会有一定问题。 |
虽然有DB SWITCH来支持其并行服务器,但DB SWITCH在技术层面还未成熟,且只支持版本12.5以上的ASE SERVER。DB SWITCH技术需要一台服务器充当SWITCH,从而在硬件上带来一些麻烦。 |
获得最高认证级别的ISO标准认证。 |
性能接近于SQL Server,但在UNIX平台下的并发性要优与 SQL Server。 |
C/S结构,可以用ODBC、Jconnect、Ct-library等网络客户连接。 |
较复杂,同时提供GUI和命令行。但GUI较差,常常无法及时状态,建议使用命令行。 |
向下兼容, 但是ct-library 程序不益移植。 |
DB2 |
能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。 |
具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点安全性。 |
获得最高认证级别的ISO标准认证。 |
性能较高适用于数据仓库和在线事物处理。 |
跨平台,多层结构,支持ODBC、JDBC等客户。 |
操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同。 |
在巨型企业得到广泛的应用,向下兼容性好。风险小 |
4.OS操作系统:Windows Server、Linux(起源于网络,起源于Unix,开源的免费的,靠卖服务收费,如Ubuntu、Red Hat等)、Unix(一种是IBM的AIX,如中国移动;另一种是HP的HP-Unix,如中国电力。很厉害,功能很强大)。
5.编程语言:基于B/S架构,
.html、.htm、.dhtml、.shtml:超文本标记语言HTML,静态页面设计,web服务器所有都行,Apache、Tomcat、IIS、JBoss、Resin、WebLogic、WebSphere
.jsp、.do、.js、.css:J2EE、Java、Jsp,动态页面设计,Web服务器包括Tomato、JBoss、WebLogic、Resin、WebSphere,所有数据库都行,不区分系统平台
.asp、.aspx:.net、C#、.asp,动态页面设计,WEB服务器包括IIS或IIS+Apache,Apache跟什么服务器都可以配,是解析静态的,数据库是SQLServer,应用于Windows server平台
.php:LAMP/WAMP,动态页面设计,Linux+Apache+MySQL+PHP解析器/Windows server+Apache+MySQL+PHP解析器
二、为什么Java语言一次编译到处运行?
.java经过JRE编译(Javac)运行,放到JVM跑,生成.class字节码文件
以下三者统一称JDK:
JDK(Java develop kit)Java开发平台,库函数、类文件
JRE(Java Run Environment)Java运行环境
JVM(Java Virtual Machine)Java虚拟机
将.java编译成.class文件,运行.class文件,跟平台无关。
三、HTTP状态码:(性能测试)
200:服务器响应正确
403:连接被限制
404:不存在
500:服务器处理错误
四、搭建JDK+Tomcat,参见“Windows测试环境搭建手册.doc”
五、HTML语言:参见“HTML开发基础.pptx”
HTML表单的两种提交方式(method):
get:小数据,不加密
post:大数据,加密