对C/S与B/S架构的产品进行系统测试,有哪些不同点与相同点?

Keep Open and Learning
Post Reply
yingjd_1982
Posts: 11
Joined: 25 May 2010 06:59

对C/S与B/S架构的产品进行系统测试,有哪些不同点与相同点?

Post by yingjd_1982 » 18 Jan 2012 14:46

C/S 应用中经常用到的测试方法:
下面的应用功能测试客户端应用被独立地执行,以揭示在其运行中的错误。
1 服务器测试
测试服务器的协调和数据管理功能,也考虑服务器性能(整体反映时间和数据吞吐量)。
2 数据库测试
测试服务器存储的数据的精确性和完整性,检查客户端应用提交的事务,以保证数据被正确地存储、更新和检索。
3 事务测试
创建一系列的测试以保证每类事务被按照需求处理。测试着重于处理的正确性,也关注性能问题。
4 网络通信测试
这些测试验证网络节点间的通信正常地发生,并且消息传递、事务和相关的网络交通无错的发生.

b/S 应用中经常用到的测试方法:

1 功能测试
测试服务器的功能是否都已经实现且业务都能正常进行
2 数据库测试
测试服务器存储的数据的精确性和完整性,检查客户端应用提交的事务,以保证数据被正确地存储、更新和检索。
3 事务测试
创建一系列的测试以保证每类事务被按照需求处理。测试着重于处理的正确性。
4 性能测试
寻找系统瓶颈,确保系统在高并发的时候,仍然能正确的对事务进行处理。
5 兼容性测试
确保系统能在各种浏览器中能正常运行和处理业务。
6 安全性测试
一般系统要挂到互联网,会面临各种攻击,需要对系统进行一个整体的安全性是否达标的测试。


在系统的性能方面
1 B/S占有优势的是其异地浏览和信息采集的灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端。
不过,采用B/S结构,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重。
2 采用C/S结构时,客户端和 服务器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。而且,由于客户端使用浏览器,使得网上发布的信息必须是以HTML 格式为主,其它格式文件多半是以附件的形式存放。而HTML格式文件(也就是Web页面)不便于编辑修改,给文件管理带来了许多不便。


按系统测试的分类
1.功能性测试
C/S:服务器和客户端均会分担一部分的事务处理功能,应分开测试。
B/S:服务器负责主要的事务逻辑,所以应将重点放在服务器上。
2.安全测试
C/S:可以使用多种网络协议,甚至可以自定义协议,从这个角度来看,C/S的安全性是有保障的。
B/S:使用http协议,虽然最新的https协议在安全性方面有所提升,但还是弱于C/S。
3.配置测试
C/S:客户端需要进行安装和卸载测试。
B/S:无需安装,但要针对不同核心的浏览器进行兼容测试。
4.GUI测试
C/S:客户端的界面变化不会太频繁,比较适合使用自动化工具来简化测试工作。
B/S:根据浏览器渲染核心不同需要作出相应调整;从网络速率上考虑,还要调整页面中各元素大小。
5.性能测试
C/S:由于一部分的事务处理在客户端上就能进行,所以大大减轻了服务器的负担;但由于网络传输的优势,却可能带来较多并发的问题。
B/S:所有事务交由服务器进行处理,服务器的抗压能力是首要的;同时,网络速率和用户量与日俱增,也会带来大量并发问题。


相同点:
包含的相同的测试类型:
文档测试
界面测试
功能测试
业务逻辑测试
部署测试
安全性测试
性能测试
兼容性测试
稳定性测试

不同点:
部分测试类型的侧重点:
业务逻辑测试
C/S架构的应用更偏重工作流应用,业务逻辑较多,较复杂,要设计专门的业务用例进行验证
B/S架构的应用更偏重内容展示(一些电商类型的交易网站除外),业务逻辑相对较少,着重进行功能点验证
部署测试
C/S架构的应用要进行严格的安装,卸载以及更新测试
B/S架构的应用只需要做部署测试
安全性测试
C/S架构的应用通常在局域网内使用,对安全性要求较低
B/S架构的应用依赖互联网,面临的威胁较多,对于安全性要求较高,需要做严格的安全性测试
性能测试
C/S架构的应用客户端和服务器均能处理业务,服务器负载相对较轻,另外,因为数据通信基于局域网,网络环境要求相对较低
B/S架构的应用主要的业务处理均放在服务器端,需要着重测试服务器(应用服务器,数据库服务器,缓存服务器)等的性能表现,另外,要严格监视网络带宽因素
兼容性测试
C/S架构的应用主要测试对操作系统和其他安装软件的兼容性
B/S架构的应用主要测试对操作系统及浏览器类型的兼容性
稳定性测试
C/S架构的应用客户端的稳定性测试非常必要,因为待测软件的环境相对较复杂
B/S架构的应用的稳定性则主要取决于服务器的性能,相对较简单


1.硬件环境不同
C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.
B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行
2.对安全要求不同
C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.
B/S 建立在广域网之上, 对安全的控制能力相对弱, 可能面向不可知的用户。
3.对程序架构不同
C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.
B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟
4.软件重用不同
C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.
B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子
5.系统维护不同
C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统
B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
6.处理问题不同
C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统
B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.
7.用户接口不同
C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高
B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本. 8.信息流不同
C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低
B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更像交易中心。

Post Reply