浅谈B/s架构与C/S架构测试

上一篇 / 下一篇  2011-08-08 22:12:18

浅谈B/s架构与C/S架构测试

 

对于两种架构的定义与各自的优缺点本文不作过多介绍,相信大家在网上能搜到成千上万的答案,我们这里主要介绍对于这两种架构的项目在测试过程中的重点并结合具体的实例讲解和大家一起分享。由于时间仓促,只是整理了几个典型的类别,并没有对每个类别作详细的介绍与说明,以后有时间再作进一步说明,尽请谅解!

 

对于功能测试,其实都是一样的,判断功能是否有问题并不取决于系统的架构,而是根据客户的需求,来判断预期结果与实际结果之间的差异。以下罗列出的主要是考虑到这两种架构本身所导致测试的偏重点。

 

我们也许都知道B/S架构中客户端向服务端请求是通过http方式的,C/S架构中客户端向服务端请求是通过socket方式的,其实很类似

1.      建立客户端的socket,确定要连接的服务器的主机名和端口

2.      发送连接请求到服务器,并等待服务器的回馈信息

3.      连接成功后,与服务器进行数据的交互

4.      数据处理完毕后,关闭自身的socket连接

 

B/S架构:

l cookiesession

由于http协议的无状态性,从而导致了cookie的诞生,对于程序基于cookiesession的编程,通常我们需要测试cookie是否按预定的时间进行保存,刷新对Cookies有什么影响等;例如在浏览器端禁用cookie,那么登录时,通常是登录不进系统的,目前见到的大部分系统都存在这样的问题,实际如果系统做的很完善的情况下,是可以解决此问题的,或者能给用户一个有好的提示等。

l 前台验证和后台验证

对于后台验证,作为C/S程序可能并不需要过多考虑,因为它的代码都是在后台编写的;

关于web程序绕过前台进行后台验证的测试,在这里不再多说,相信网上有很多工具可以实现。

l 安全性测试

在因特网上部署的系统尤其重要,测试的过程中我们通常会进行sql注入,cookie欺骗,html标签,特殊字符,字符长度是否与数据库中一致,上传文件时选择一些特殊的文件(.aspx,jsp,php)等等

l 兼容性测试(客户端是浏览器,存在众多不确定性)

B/S的唯一客户端就是浏览器,而浏览器又有成千上万种,不同的浏览器内核不同,解读页面控件和脚步语言的结果也不一样,可能导致不同的浏览器对系统显示有差别或者部分功能不可用

 

 C/S程序一般是典型的中央集权的机械式处理,交互性相对低,通常是部署在局域网内的,对网络环境要求低

l 兼容性

我们知道B/S的压力在服务端,C/S客户端可以分担一些压力,但是C/S对客户端的环境要求相对较高,包括OS环境(根据目前使用情况来说,主要是在win7系统或同期版本中出现权限问题,或受OS位数的影响),安装过程是否与其他软件冲突,安装顺序,.Net framework版本,客户端升级等均有不同程度要求,同时维护成本较高。

 

l 安装/卸载测试

1.      C/S结构通常我们先要安装(其实也可以不用安装,直接运行exe文件,也就是我们所说的绿色版本,具体可以根据实际需要),安装界面,路径,安装后的功能是否可用,重复安装,安装失败后是否回滚等等均在测试范围之类。

2.      有安装就有卸载,windows自带了一个卸载功能,c:\windows\system32\msiexec.exe,我们在生成安装包的同时可以调用此文件。当然也可以使用第三方的卸载工具,如360卸载等。

l 快捷键的使用

Windows操作习惯性讲究快捷,所以通常用户会在常用模块要求使用快捷键来操作

l UI测试

Web程序同样也会考虑到UI测试,在这里主要是考虑异于web的地方。例如窗口的缩放,拖动,任务栏管理器的启用与禁用,以及多窗口的操作及排列等,通常都是要符合windows的操作习惯。

l 明显的性能问题

通常在对程序最小化后系统资源占用多少有一定要求,或者允不允许同时打开多个进程,运行长时间后系统出现卡死等明显的性能问题均在考虑范围之内


TAG:

 

评分:0

我来说两句

Open Toolbar