客户端测试
Client测试的特点
Client测试也叫做客户端测试,是测试安装在用户机器上的应用程序的各个功能是否可以正常运行
需要先在本机安装Client程序包,然后通过运行Client程序,进行各种数据的输入,保存等操作。
测试内容包括:安装测试、卸载测试、用户界面测试、功能测试、字符输入测试、提示信息测试、超链接测试、操作按钮测试、菜单测试、视频音频测试、程序运行权限测试等。
1.安装测试
包括进行首次安装、升级安装、完整的或自定义安装、以及异常的情况,如:磁盘空间不足、缺少目录创建权限等。
首次安装测试: 从测试站点下载Client的安装包 运行安装包,将会出现安装欢迎窗口,按提示完成安装
重复安装测试 程序首次安装完成之后,可以验证再次安装的测试用例
示例的缺陷分析: 在测试机器上安装Client程序,并且运行它
保证程序正在运行,再次安装Client程序 预期结果:弹出信息,提示用户退出当前正在运行的程序 实际结果:直接弹出错误窗口,而且是系统弹出来的。
2.卸载测试
卸载时,可以通过程序自己的卸载程序,也可以通过Windows控制面板里的删除/卸载功能。这两种方法都需要验证,确保程序都可以成功卸载。另外卸载之后,还要验证是否有残留文件存在,如果有残留文件,说明卸载不彻底,他就是缺陷。
需要注意以下几点: 是否可以成功卸载。有些程序安装和运行时都没有问题,但是在卸载是有报告一些例外错误。 程序的文件是否卸载干净,是否有残留文件。 程序卸载之后,是否可以再次安装 测试程序的卸载是否影响其他程序的运行,比如卸载了测试程序,系统不能启动了,或者其他的程序打不开了等。
3.UI测试
用户界面,简称UI(User Interface),是指软件中的可见外观及其底层与用户交互的部分(菜单、对话框、窗口和其他控件)。
用户界面测试是指测试用户界面的风格是否满足客户要求,他常常包括菜单、按钮、图标、文本框、对话框、出错信息、帮助信息、文字、图片等。比如文字是否正确,界面是否美观,文字,图片组合是否完美,操作界面是否友好等等。
还要验证一下几个方面: 在不同的操作系统里验证程序的UI显示,比如WinXP,Win7,Win8。 调整机器的分辨率到不同的大小,比如1024768,1440900,12801024,16001024,25601440. 示例: 登录窗口,UI测试需要从一下几个方面进行: 验证这个窗口上的文字是否整齐,字体大小、字体颜色、字体幸好是否协调一致
登录名和密码输入框排列是否整齐
选项框和“Remember my password”文字是否在同一条直线上
窗口上的按钮“Log in”,“Cancel”。“Preferences”是否排列整齐。
“Forget Password?”是超链接,当鼠标移上去变成手的形状,颜色默认应该是蓝色,并且有下划线
窗口上的标题和Logo应该对齐
缺陷分析: 调整机器的分辨率到16001024
打开Client程序 窗口上的内容不应该随着分辨率的调整而受到影响
4.功能测试
功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。功能测试也叫和黑子测试或数据驱动测试,只需考虑各个功能,不需要考虑整个软件内部结构及代码。一般从软件产品的界面、框架出发,按照需求编写出来的测试用例,输入数据在预期结果和实际结果之间进行评测,进而使产品更好的达到用户使用的要求。
功能测试时,先理清产品的主要功能,然后根据产品的数据流向,输入一些基本的正常数据,看这些主要功能是否可以实现;再做一些扩展测试,也就是修改不同的参数,看参数改变之后,是否达到需要的效果;最后做一些破坏性测试,输入一些极限或者超出范围的数据,以及做出一些例外测试,比如需要联网的产品,测试时拔掉网线,看看是否异常反应等等。
字符输入测试 字符输入测试是指在能输入字符的窗口、对话框、文本框,验证是否可以输入有效字符,字符输入长度、内容等等。
字符输入测试需注意: 字符输入测试时,要注意边界值测试,也就是最大输入字符数
要测试特殊字符的输入,因为有些代码对特殊字符没有做保护,输入时是可以的,但在保存时就会出错
要注意攻击代码的测试,能输入字符的地方,就可以输入恶意攻击代码,如果不作保护,就可能破坏产品或者给用户造成损失。
示例:登录端登录过程 在做字符输入测试时,需要从一下几个方面进行: 验证实际输入字符和规定的是否相等。同事验证输入最大字符后,窗口是否有变形,程序运行是否变慢等
再输入的字符中要包含一般的字母,数字,特殊字符,还要包含一些可以攻击的脚本等。验证输入框是否有容错性,是否能被恶意攻击
在Client输入的字符,是要上传到服务器的,验证服务器是否可以正常完整的显示。
5.Tooltip测试
Tooltip是表示一个小的长方形弹出窗口,该窗口当用户将指针悬停在一个控件上时显示有关该控件用途的简短说明,也称为提示信息。Tooltip测试是验证控件上的提示信息是否可以正常显示
Tooltip测试要注意以下几点: 验证Tooltip是否能出现 检查Tooltip出现的位置 检查Tooltip出现和消失的时间是否合理
6.链接测试
链接是Web应用系统的一个主要特征,他是在页面之间切换和指导用户连接其他页面的手段。在用户终端有时也设置一些链接,用户点击链接,就可以跳转到指定的页面。
需注意: 设置有链接的字符有下划线标识 当鼠标移动到连接上方时,鼠标会变成手的形状 测试连接是否按指示的那样确实链接到了该链接的页面 测试所连接的页面是否存在
7.操作按钮测试
操作按钮是指窗口上布置的各种功能的按钮,点击相应的按钮,就可以实现相应的功能。
需注意: 当鼠标点击的时候,按钮会有一定的变化,比如有凹陷的状态
当鼠标移开时,按钮恢复原状
按钮点击之后,验证相应的功能是否实现,比如点击“Cancel”时Login窗口被关闭,点击“log in”,如果用户名和密码正确,直接登录成功,如果用户名或密码错误,将会弹出错误提示。
检查按钮上的文字是否排列整齐,是否居中,大小是否统一
8.菜单测试
菜单是为软件的大部分功能提供入口,它分为左键菜单和右键菜单。菜单测试就是测试这些入口是否正确,是否达到想要的目的。
需注意 在很多程序的菜单包含有快捷键,测试这些快捷键是否有效,是否有重复
菜单分为一级菜单、二级菜单和更高级菜单,一级菜单后面带有黑色箭头的就是二级菜单,验证二级菜单是否正常打开,检验菜单是否指向正确,
9.音频测试
音频测试就是检验应用程序的声音输入和输出是否正常,声音是否流畅,是否有变音或音量大小不稳定。在测试时需要测试系统默认的声音设备,还要测试另外接入的音频设备,比如接入的耳麦和麦克风。
主要注意声音的输入输出是否正常
示例:QQ程序测试语音功能,需要从以下几个方面进行:
1、打开语音设置对话框,在“声音输入”和“声音输出”里选择“Windows默认设备”,测试默认设备的声音输入和输出声音质量。
2、在“调节”部分可以调整麦克风和声音输出设备的音量,测试音量调整是否有效。
3、选上和反选“自动调节麦克风音量”,麦克风的音量会根据说话声音大小自动调节,测试它是否能够成功的进行自动调节。
4、“自动放大麦克风音量”,设置这个功能后,麦克风的音量会自动放大,别人听的更清楚。
5、如果有外接的耳机或者麦克风,通过下拉框进行选择,测试选择的设备是否有效。如图所示。如果选择了外接设备,声音应该从外接设备输入或者输出,如果外接设备不能输入或者输出,或者声音仍然通过默认的设备输入/输出,那就是产品的缺陷。
6、在声音输入/输出里可以设置“禁用”,检验禁用之后,是否仍然有声音输入/输出
10.视频测试
视频软件一般是一对一,或者是一对多,也就是某个人发送视频,某一个人或者多个人同时观看。视频软件同时也是交互的,也就是自己在发送视频,同时还在接受别人发送的视频。视频测试就是测试视频的发送和接收是否流程,是否有停顿、延时,花屏,跳跃等问题。
视频测试主要注意图像是否流畅,图像和音频是否能同步
1、在“预览”里可以选择“我的本地图像”或者“对方看到的图像”。选择任何一个选项,预览视频都可以显示出来。
2、如果有多个视频设备,可以在“请您选择您的视频设备”选择,然后测试所选择的设备是否可以正常发送视频。
3、在“优先选项”里可以选择“优先保证画面清晰”或者“优先保证视频流畅”。如果带宽流量比较大,测试不明显,这时我们可以通过限速工具对本机网络进行限速,然后再测试这两个选项产生的效果。 如果机器的带宽流量比较小,想节省带宽,可以设置“节省带宽模式”。
4、打开“画质调节”,修改不同的参数,图像的质量会有相应的变化,验证质量变化是否正确。
11.程序运行权限测试
程序运行权限测试:一方面系统权限,验证程序的安装运行是否受系统权限影响,另一方面是程序自己的权限控制。
系统权限 在操作系统里有不同类型的账号,一般分为Standard user(标准用户),Administrator(管理员)。要验证在不同类型的用户环境下,程序是否可以正常安装和运行。 程序自己权限控制 在程序中如果涉及到多用户,都会有权限控制,不同的用户,根据需要分配给它不同的权限。(权限控制测试,主要注意用户所能使用的权限,是否和所分配的相匹配)
12.获取测试需要的Trace
程序运行的Trace,也成为运行日志,世纪路程序运行轨迹的文件,比如程序登录时使用的用户名称,打开那些窗口,执行了那些命令以及一些程序异常等等。
不同的程序,Trace的存储路径是不一样的,明明方法也不同,测试时需要根据具体的程序查找Trace所在的位置
客户端(Client)测试,相比Web测试或者Server测试是不同的,它是直接面向用户的,操作习惯、界面风格、友好程序等等,都需要从用户的角度来思考。客户端测试涉及的分类很多,在测试之间要做好规划,把所有需要测试的范围罗列出来,最好写成Test Case,以免测试时漏掉。
客户端测试点
1.客户端安装测试
1.1 ⾸次安装:部分客户端在第⼀次安装时候都需要在电脑上进⾏c++环境的安装,要检查⾸次安装时候是否有环境安装的提⽰,检查⾸次安装时默认的安装路径,是否可以⾃⼰指定路径安装,安装过程是否有进度条提⽰,安装完毕后是否能正常打开客户端登录或者要进⼊的页⾯
1.2 重复安装:重复安装客户端需要进⾏组织和相关的提⽰,更换安装路径也不能进⾏安装
1.3 卸载后再次安装:卸载后要检查相关⽂件是否删除,再次安装到原来相同的路径或者是更换新的路径,客户端是否能够正确的安装和使⽤
1.4 系统盘安装:电脑盘中的系统盘权限较⾼,如果安装系统盘,没有对电脑中的权限做处理的情况下,会出现客户端⽆法安装的情况,并且要检
查在系统盘那些要读写的⽂件,客户端是否给与权限可以正常操作
1.5 安装路径带有中⽂:当电脑的⽤户名或者安装的⽂件夹名字含有中⽂,如果客户端没有针对中⽂处理,会出现客户端崩溃和⽆法使⽤的情况
1.6 断⽹情况下进⾏安装
1.7 ⾃定义安装:测试更换路径或者⼿动输⼊路径(存在或者不存在)进⾏安装
1.8 检查安装向导:安装时候可以正常进⾏上⼀步或者下⼀步
1.9 安装的检查:检查是否创建对应的快捷⽅式,⽣成的快捷⽅式的图标是否清晰,在控制⾯板中是显⽰正确的信息如:版本号,开发者名称,⼤⼩等
1.10 杀毒软件对于客户端安装的拦截:安装过程中,是否被杀毒软件进⾏拦截或者标记⽊马。
1.11 端⼝占⽤对客户端安装:在安装或者运⾏部分客户端,可能会出现需要使⽤的端⼝被其他电脑上的软件给占⽤,检查当某个端⼝被占⽤时,时候能够进⾏安装和提⽰,解决端⼝占⽤的问题
1.12 安装兼容性测试:在不同的系统下进⾏安装:win7 win10 win8,时候能够正常的使⽤
1.13 磁盘空间不⾜的情况下安装
2.UI测试
2.1 不同分辨率下客户单的使⽤:修改电脑的分辨率,检查客户端的UI是否能够适应不⽤分辨率
2.2 更改电脑的“缩放和布局”:在电脑中选择电脑的缩放设置,不同电脑的缩放设置不同,⼀般情况下是100%,但是很多电脑在分辨率较⾼,125%或者更⾼,需要测试不同缩放情况下的客户端的界⾯风格,如:客户端的⽂字和UI图标是否能够正常按照⽐例缩放,还是固定的⼤⼩不能进⾏缩放
2.3 客户端最⼤化和最⼩化对UI的影响:客户端需要设置⼀个原先正常的⼤⼩,当最⼤化客户端和还原客户端来回切换,界⾯UI时候能够正常显⽰和展⽰
3.通⽤测试点
3.1客户端登录⽤户名包含中⽂能否正常记住⽤户名:当登录的客户端的⽤户名中包含中⽂,并且选择记住⽤户名的时候,在本地保存的⽤户名txt
⽂件中,如果不做处理,保存的⽂件显⽰的是乱码,在下次登录后⽤户名的输⼊框中会⽆法正常展⽰⽤户名
3.2 正常尺⼨下来回拖动客户端的位置
3.3 最⼤化 最⼩化 还原:检查客户端是否可以通过底部状态栏点击还原客户端,当电脑桌⾯打开多个页⾯,是否可以正常的和其他的页⾯进⾏切换使⽤快捷键Alt+table
3.4 关闭客户端和重新开启客户端:退出客户端前需要进⾏提⽰,是否确认退出客户端,点击确认才可以正常退出,退出后需要查看任务管理器,查看对应的进程是否全部关闭,再次打开客户端是否提⽰客户端已经开启,如果退出后进⾏没有关闭,⽆法再次打开
3.5 客户端快捷键:客户端存在需要默认的快捷键需要在开发过程中进⾏屏蔽,如退出esc,f1,f….,已经检查右键点击菜单中是否包含不必要的菜单
3.6 检查客户端⼦窗⼝和主场⼝的优先级:在升级或者有弹出⼦窗⼝时候,客户端是否能够按照⽤户的习惯或者正常的顺序排列窗⼝的等级或者正确的顺序进⾏关闭
3.7 重复开启客户端:只能打开⼀个客户端的进程,在开启客户端的状态下,再次打开客户端
4.客户端的升级
4.1 升级⽂件的检查:检查升级⽂件中升级下载地址是否正确,服务器上传的升级包是否完成,上传到服务器的版本信息以及更新是否都有替换
4.2 ⽹络正常情况下升级
4.3 在升级过程中⽹络异常:升级过程中,⽹络断开,升级进度条卡住,要求在升级卡住或者失败的的情况下,更新的进度条在检测失败后,可以⾃动或者提⽰⼿动退出升级
4.4 ⼿动升级和⾃动升级:⾃动升级在客户端开启就进⾏检测是否有可升级版的版本,⼿动升级在客户端内进⾏点击升级,就是在开启客户端的情况下进⾏升级,升级过程需要强制关闭并且退出客户端
4.5 升级后进⾏提⽰和⾃动开启客户端:升级后是否提醒已经是最新版本的客户端,并且能让⽤户进⼊到⼊⼝的也页⾯正常使⽤
4.7 升级失败后重新升级:⼀些原因导致的更新失败,如中途退出,可以再次升级
4.8 升级过后原来本地保存的⽂件和数据是否能正常使⽤:如原先保存的⽤户账号txt等
4.9 更新成功在控制⾯板已经⽂件版本中信息是否正确更新
4.10 下载的更新包的权限检查:当更新的包下载的本地⽬录,如果是系统盘,要确认程序是否给予升级包⾜够的权限能在系统盘下进⾏正常的解压升级
4.11 检查客户端是否可以重复升级
5.客户端的卸载
5.1 通过不同途径卸载客户端:控制⾯板,安装⽬录⾃带卸载程序,通过电脑管家或者360管家卸载程序是否能够正常的卸载程序
5.2 终⽌程序的卸载
5.3 断⽹的情况下进⾏卸载
5.4 客户端开启的状态下进⾏卸载
5.5 卸载的过后客户端⽂件是否清理⼲净:在安装⽬录下对应的数据是否清理,快捷⽅式和⼀些注册信息是否删除
5.6 卸载过程中出现异常不能正常卸载:卸载过程出电脑出出现卡机或者断电
6.稳定性测试
7.性能和cpu的测试
在进⾏客户端测试的过程中,需要在资源管理器中查看对应的进程占⽤的内存和cpu,对于⼀个客户端的在使⽤的过程中,检查CPU的峰值和正常值,尽量使客户端达到⼀个稳定的状态
8.⽹络问题
有的客户端需要不停的向服务器发起轮询,这就需要检查客户端的⽹络断开和连接机制,在每次轮询过程中是否提⽰断⽹,在检查到⽹络是否能正常的回复
9.客户端和接⼝的调⽤
在客户端进⾏接⼝调⽤能正常的展⽰接⼝返回的正确信息,当接⼝返回异常已经⼀些错误的时候,客户端是具有正常展⽰异常已经处理的能⼒,如接⼝挂掉,长时间没有返回等,⽆论接⼝正常或者异常,客户端本⾝具有处理的能⼒
10.不同系统的兼容测试
在测试中如果没有⾜够的电脑进⾏兼容测试,可在本地安装虚拟机,搭建不同的系统进⾏测试
11.客户端上线的增量包和全量包
线上的环境在更新增量包进⾏升级,有时候还需要将更新线上全量的下载包,让新⽤户能安装到最新版本的客户端。在上全量包时候,要在本地卸载之前的客户端,需要重新安装新的全量包,确保安装在本地的客户端能够正常的使⽤和升级,检查所有的功能,还有升级,防⽌在打包的全量包中出现部分⽂打包缺失,或者版本升级链接错误等问题。