一、C/S结构特点
1.C/S结构(Client/Server,客户机/服务器模式)
C/S结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。因为客户端要负责绝大多数的业务逻辑和UI展示,又称为胖客户端。它充分利用两端硬件,将任务分配到Client 和Server两端,降低了系统的通讯开销。
2.优点
C/S架构的界面和操作可以很丰富,能充分满足客户自身的个性化要求,安全性能可以很容易保证,C/S一般面向相对固定的用户群,程序更加注重流程,它可以对 权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜由于只有一层交互,很多工作可以在客户端处理后再提交给服务器,因此响应速度较快。
3.缺点
需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置 。用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户,所以适用面较窄,通常用于局域网中。维护成本高,发生一次升级,则所有客户端的程序都需要改变。兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。
二、C/S的工作原理
C/S 架构是一种典型的两层架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据; 另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。
三、C/S的测试技术
1.安装
安装包:完整性,安装包大小是否达到要求,显示基本信息是否正确,步骤是否明确,内容是否合理
首次安装:
1)是否与其他已安装的软件冲突。
2)各种杀毒软件(卡巴、瑞星、360)对安装程序的影响)
3)安装目录的考虑(中英文字符、长度、空目录、根目录、修改目录、默认目录)
4)干净环境下能否正常完成安装
5)安装后快速启动、桌面、开始程序里面的快捷方式情况等
6)360一键智能安装是否能正常完成
7)安装的程序是否带有插件
再次安装:
1)在已经安装该软件的情况下,再次进行安装,表现是否正常(比如提示是否升级、检测到已安装);需要考虑已安装和现安装版本差异问题
2)卸载后再次安装是否正常完成
升级安装:
1)在线升级时,是否能合理处理网络中断的情况
2)升级包升级时,考虑软件正在使用时是否运行进行升级,升级过程是否正确
3)升级完成后,软件启动是否正常
2.卸载
1)卸载时是否要退出客户端(退出和不退出都要考虑),卸载后的表现。不退出卸载是否能成功,不成功,是否有相应提示等。
2)是否能在控制面板里面卸载
3)是否自带卸载工具,卸载能否成功
4)借助其他工具卸载能否成功
5)卸载是否完全卸载干净,包括快捷方式、注册表信息等
3.界面及用户体验
1)界面美观及控件样式是否符合用户的常用习惯(这个值得探讨,没有一个统一的标准)
2)程序所有可点击地方是否可以进行操作,菜单、按钮、超链接(文字颜色以及是否能正常链接)、文字等
3)还需要考虑在不同显示器上的显示,各种比例和分辨率下的显示情况
4.窗口
窗口的缩放(双击的最大最小,点击按钮的最大最小,关闭)、拖动(开多个窗口拖动)任务栏(左键单击和右键单击的操作)、托盘区、任务管理器操作。一般客户端软件,开着窗口在桌面上移动的时候,cpu占用都比较高,这个性能需要控制在某个合适的范围内。
多窗口的操作是否合理,需要考虑窗口的模态性,比如有模态窗口的时候,进行其他的操作,以及模态窗口的重绘等。
4.提示信息
各种操作对应的正确、错误类提示信息是否正确
界面文字提示是否友好、易懂、简练
操作流程是否清晰,用户知道自己每步都是在做什么,即操作提示是否清晰明了
有错误类信息,不要使用代码类文字,考虑到用户群体的情况,还要区分中英文(用哪个更好)
5.键盘鼠标操作
快捷键操作是否正常,是否与其他软件的快捷键冲突等
鼠标拖放显示是否正常,是否影响操作
鼠标右键功能是否正常合理
6.具体功能
是否所有可操作的功能都能按需求实现(如:登陆退出,信息传输功能,备份功能,系统设置功能,搜索功能,界面模板更新,信息增删改功能等)
对于功能块的无效操作和极端操作是否都有合理的处理(如:无效的输入字符,超长的字符长度,脚本注入等)
操作界面是否即时动态刷新
如果有托盘图标,需要考虑托盘图标的显示状态,是否能显示,操作是否正常等
各类控件的表现和操作是否正常,如下拉列表、日历控件等
7.文件传输功能
需要考虑不传输文件、传输文件内容为空(大小为0KB,边界值考虑)、文件内容包含特殊字符、文件名字符
传输文件的格式
涉及到网络传输,和端口有关系的,要考虑模拟一下端口错误,封端口的操作
发送文件时,考虑本地文件,还要考虑ftp,http上的文件
需要考虑磁盘空间不足的情况
正在使用的文件是否是独占状态
涉及到文件保存时,需要考虑文件保存的类型、名称的默认给出
文件拖动类的考虑
涉及到文件写入读取的,需要考虑移动设备,比如U盘、硬盘、ftp等
是否超过最大容量、流量限制
8.兼容测试
不同语言系统上的使用区别,在控制面板的区域和语言选项里面进行设置,管理选项卡里更改系统区域设置。例如中文系统,英文系统,韩语系统等。
不同操作系统上使用的区别(winXP,Vista,Win7,Win2000,Win2003,Win2008,32位和64位系统)。
同一个系统的不同系统用户操作(管理员和非管理员)需要考虑计算机休眠,待机后在启动软件的表现情况,各种杀毒软件对软件的影响。瑞星、卡巴、360等(杀毒软件对一些文件类型、端口等有监控,需要考虑。可能由于软件使用某些端口而被杀毒软件阻止而导致不能正常使用)。
9.性能测试
并发负载问题;
不同网络环境的信息传输性能,丢包率;
同等网络环境下,不同并发数场景下,信息传输性能,丢包率;
大数据量的测试