第一篇:功能测试工作的一点总结
功能测试工作的一点总结
一直在做功能测试工作,负责过三四个不大不小的项目的功能测试工作,却很少静下心来总结工作中的得失。
很多不了解测试的人,认为功能测试不过就是拿鼠标点来点去,没有什么技术含量,随便招个应届毕业生就能干的工作。我也曾经认为功能测试没什么前途,现在看来觉得自己太浮躁了。功能测试的门槛可能比较低,做测试工作的人大多都是从功能测试开始,但要做好功能测试却不容易,需要学习的知识还很多,比如操作系统、数据库、网络。下面主要结合工作实践谈谈我对功能测试的一点总结。
功能测试最重要的是理解业务和需求。知道系统要实现什么功能,业务流程是怎样的,然后就可以根据需求编写测试计划和测试用例了。测试书籍上介绍常用的编写测试用例的方法有:等价类、边界值、因果图、判定表等,在实际工作中,我使用较多的有等价类、边界值、场景法和错误猜测法。在这里需要提一点,将测试用例按测试目的进行分类,比如用户界面、功能点、业务场景等,会让测试用例的结构看起来更清晰,执行测试用例的效率也更高。
要做好功能测试,还需要对整个系统的数据库结构比较清楚,每个功能点涉及哪些数据表,对数据的操作方式是怎样的。这样就不单从前台页面来进行测试,通过对数据库中数据的验证,可以发现隐藏的一些bug。比如库表没有进行关联删除,从前台页面是看不出来的,但实际可能导致程序出现问题。对一些比较复杂的组合查询或数据排序,也可以自己编写sql语句对结果进行验证。
除此之外,了解程序的框架结构和一些开发知识也有助于更好地测试程序和定位错误。做完一个业务,可以通过系统日志来查看错误原因,结合数据库结构,可以更好帮助开发人员定位错误。比如日志记录执行哪条sql语句出错了,错误的原因是字段长度设置不够。我在这方面做得不太好,现在在努力学习一些开发知识,期待在以后的工作能做得更好。
最后,对bug的分析和总结有助于积累测试经验。比如哪种类型的bug数量多,哪些测试用例发现的bug较多,有助于测试用例的编写和修改。在探索测试时,发现bug的测试过程也要加入测试用例库中。通过测试用例的累积,可以更好地了解系统常出现的错误,积累更多的测试经验。
第二篇:功能测试总结精华
以下是本人在工作中的功能测试小结,拿来和大家一起分享:
1.留意分机电话号码
2.输入相同的字段名称(一般为必填项的)后,选择信息(可以有不同选择的,如:下拉框): 输入同一个名称后,分别选择不同的状态,进行保存时,验证是否可以正常操作。
3.修改信息时,注意进入到修改页面后信息是否可以被修改,并查看修改后的信息与添加页面的信息是否一致
4.修改信息时,在修改页面输入异常数据或超长字符后保存
5.注重关联测试
6.测试登录时,别忘了修改密码时的相关测试
7.在搜索栏输入关键字后,敲空格
8.重复点击页面上的按钮,观察系统反应
9.测试删除时,删除完所有信息后,点击删除按钮,观察系统的反应
10.上传下载文件检查,对上传下载的文件名也要进行检查,有时下载下来的文件名是乱码
11.界面测试不光要考虑合理的键盘输入,还应考虑是否可以通过鼠标拷贝粘贴输入
12.在分类树结构中进行操作时,关注当编辑子分类时,上级分类应该是只读的13.分页测试时,应注意在页码栏处输入较大数字的情况
14.如果是不用选择对象就可以直接进入的按钮,没有必要在没有选择对象时提示“请选择要操作的对象”,而在全选或者选择一个后才可以进入按钮对应的页面
15.测试时,留意不同浏览器下文字的字体、颜色变化。
16.选项卡形式的文字切换时,文字有链接时,鼠标滑过时颜色更改就可以进行选项卡切换;文字无链接时,需要手动点击鼠标才可以切换;
17.测试时注意留意浏览器标题栏:查看标题栏显示的信息和网页标题是否一致;
18.对于页面有表格的,表格中字段宽度应有重点优先级;
19.按钮实现功能时尽可能放在同一个页面;
20.检查多次使用back键的情况:在有back的地方,back,回到原来页面,再back,重复多次,看会否出错;
21.点击提示:点击浏览过的信息颜色需要显示为不同的颜色,以区分于未阅读内容,避免重复阅读;
22.错误提示:若表单填写错误,应指明填写错误之处,并保存原有填写内容,减少重复工作;
第三篇:功能测试总结
以下内容,感谢本人朋友提供:
1.对你们整个系统的数据流走向熟悉了吗 2.没操作一步,数据进入哪些表? 什么状态? 3.产生多少条数据 4.服务架构是什么 5.抓包分析你的接口了吗
6.那怎么定位到代码错误的?先查看日志
服务器架构
第四篇:功能测试小结
常用的功能测试方法
功能测试就是对产品的各功能进行php?name=%D1%E9%D6%A4“>验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。针对web系统的常用测试方法如下:
1.页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。可以使用一些工具,如LinkBotPro、File-AIDCS、HTML Link Validater、Xenu等工具。LinkBotPro不支持中文,中文字符显示为乱码;HTML Link Validater只能测试以Html或者htm结尾的网页链接;Xenu无需安装,支持asp、do、jsp等结尾的网页,xenu测试链接包括内部链接和外部链接,在使用的时候应该注意,同时能够生成html格式的测试报告。如果系统用QTP进行自动化测试,也可以使用QTP的页面检查点检查链接。
2.相关性检查:功能相关性:删除/增加一项会不会对项产生影响,如果产生影响,这些影响是否都正确,常见的情况是,增加某个数据记录以后,如果该数据记录某个字段内容较长,可能会在查询的时候让数据列表变形。
数据相关性:下来列表默认值检查,下来列表值检查,如果某个列表的数据项依赖于其他模块中的数据,同样需要检查,比如,某个数据如果被禁用了,可能在引用该数据项的列表中不可见。
3.检查按钮的功能是否正确:如新建、编辑、删除、关闭、返回、保存、导入,上一页,下一页,页面跳转,重置等功能是否正确。常见的错误会出现在重置按钮上,表现为功能失效。
4.字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度。还要检查需求规定的字符串长度是否是正确的,有时候会出现,需求规定的字符串长度太短而无法输入业务数据。
5.字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型。
6.标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键。看系统处理是否正确。常见的错误是系统对空格的处理,可能添加的时候,将空格当作一个字符,而在查询的时候空格被屏蔽,导致无法查询到添加的内容。
7.特殊字符检查:输入特殊符号,如@、#、$、%、!等,看系统处理是否正确。常见的错误是出现在% „ ” 这几个特殊字符
8.中文字符处理: 在可以输入中、英文的系统输入中文,看会否出现乱码或出错。
9.检查信息的完整性: 在查看信息和更新信息时,查看所填写的信息是不是全部更新,更新信息和添加信息是否一致。要注意检查的时候每个字段都应该检查,有时候,会出现部分字段更新了而个别字段没有更新的情况。
10.信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。
11.检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按“delete”,看系统如何处理,会
否出错;然后选择一个和多个信息,进行删除, 看是否正确处理。如果有多页,翻页选,看系统是否都正确删除,并且要注意,删除的时候是否有提示,让用户能够更正错误,不误删除。
12.检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.13.检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.14.重复提交表单:一条已经成功提交的纪录,返回后再提交,看看系统是否做了处理。对于Web系统来说,可以通过浏览器返回键或者系统提供的返回功能。
15.检查多次使用返回键的情况: 在有返回键的地方,返回到原来页面,重复多次,看会否出错。
16.搜索检查: 有搜索功能的地方输入系统存在和不存在的内容,看搜索结果是否正确.如果可以输入多个搜索条件,可以同时添加合理和不合理的条件,看系统处理是否正确,搜索的时候同样要注意特殊字符,某些系统会在输入特殊字符的时候,将系统中所有的信息都搜索到。
17.输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。
18.上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。下载文件能否打开或者保存,下载的文件是否有格式要求,如需要特殊工具才可以打开等。上传文件测试同时应该测试,如果将不能上传的文件后缀名修改为可以上传文件的后缀名,看是否能够上传成功,并且,上传文件后,重新修改,看上传的文件是否存在。
19.必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加“*”;对必填项提示返回后,焦点是否会自动定位到必填项。
20.快捷键检查:是否支持常用快捷键,如Ctrl+C、Ctrl+V、Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。
21.回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错。这个地方很有可能会出现错误。
22.刷新键检查:在Web系统中,使用浏览器的刷新键,看系统处理如何,会否报错。
23.回退键检查:在Web系统中,使用浏览器的回退键,看系统处理如何,会否报错。对于需要用户验证的系统,在退出登录后,使用回退键,看系统处理如何;多次使用回退键,多次使用前进键,看系统如何处理。
24.直接URL链接检查:在Web系统中,直接输入各功能页面的URL地址,看系统如何处理,对于需要用户验证的系统更为重要。如果系统安全性设计的不好,直接输入各功能页面的URL地址,很有可能会正常打开页面。
25.空格检查:在输入信息项中,输入一个或连串空格,查看系统如何处理。如对于要求输入整型、符点型变量的项中,输入空格,既不是空值,又不是标准输入。
26.输入法半角全角检查:在输入信息项中,输入半角或全角的信息,查看系统如何处理。如对于要求输入符点型数据的项中,输入全角的小数点(“。”或“.”,如4.5);输入全角的空格等。
27.密码检查:一些系统的加密方法采用对字符Ascii码移位的方式,处理密码加密相对较为简单,且安全性较高,对于局域网系统来说,此种方式完全可以起到加密的作用,但同时,会造成一些问题,即大于128的Ascii对应的字符在解密时无法解析,尝试使用“uvwxyz”等一些码值较大的字符作为密码,同时,密码尽可能的长,如17位密码等,造成加密后的密码出现无法解析的字符。
28.用户检查:任何一个系统,都有各类不同的用户,同样具有一个或多个管理员用户,检查各个管理员之间是否可以相互管理,编辑、删除管理员用户。同时,对于一般用户,尝试删除,并重建同名的用户,检查该用户其它信息是否重现。同样,提供注销功能的系统,此用户再次注册时,是否作为一个新的用户。而且还要检查该用户的有效日期,过了有效日期的用户是不能登录系统的。容易出现错误的情况是,可能有用户管理权限的非超级管理员,能够修改超级管理员的权限。
29.系统数据检查:这是功能测试最重要的,如果系统数据计算不正确,那么功能测试肯定是通不过的。数据检查根据不同的系统,方法不同对于业务管理平台,数据随业务过程、状态的变化保持正确,不能因为某个过程出现垃圾数据,也不能因为某个过程而丢失数据。
30.系统可恢复性检查:以各种方式把系统搞瘫,测试系统是否可正常迅速恢复。
31.确认提示检查:系统中的更新、删除操作,是否提示用户确认更新或删除,操作是否可以回退(即是否可以选择取消操作),提示信息是否准确。事前或事后提示,对于Update或Delete操作,要求进行事前提示。
32.数据注入检查:数据注入主要是对数据库的注入,通过输入一些特殊的字符,如“‟”,“/”,“-”等或字符组合,完成对SQL语句的破坏,造成系统查询、插入、删除操作的SQL因为这些字符而改变原来的意图。如select * from table where id = „ ‟ and name = „ ‟,通过在id输入框中输入“12‟-”,会造成查询语句把name条件注释掉,而只查询id=12的记录。同样,对于update和delete的操作,可能会造成误删除数据。当然还有其它一些SQL注入方法,具体可以参考《SQL应用高级SQL注入.doc》,很多程序都是基于页面对输入字符进行控制的,可以尝试跳过界面直接向数据库中插入数据,比如用Jmeter,来完成数据注入检查。
33.刷新检查:web系统中的WebForm.控件实时刷新功能,在系统应用中有利有弊,给系统的性能带来较大的影响。测试过程中检测刷新功能对系统或应用造成的影响(白屏),检查控件是否回归默认初始值,检查是否对系统的性能产生较大影响(如每次刷新都连接数据库查询等)。
34.事务检查:对于事务性操作,断开网络或关闭程序来中断操作,事务是否回滚。
35.时间日期检查:时间、日期验证是每个系统都必须的,如2006-2-
29、2006-6-31等错误日期,同时,对于管理、财务类系统,每年的1月与前一年的12月(同理,每年的第1季度与前一年的第4季
度)。另外,对于日期、时间格式的验证,如2006年2月28日、2006-2-
28、20060228等。日期检查还要检查日期范围是否符合实际的业务,对于不符合时间业务的日期,系统是否会有提示或者有限制。
36.多浏览器验证:越来越多的各类浏览器的出现,用户访问Web程序不再单单依赖于Microsoft Internet Explorer,而是有了更多的选择:Maxthon、Firefox、Tencent Traveler等,考虑使用多种浏览器访问系统,验证效果。
37.安装测试:对于C/S架构的系统,安装程序的测试是一个重要方面,安装程序自动化程度、安装选项和设置(验证各种方案是否都能正常安装)、安装过程中断测试、安装顺序测试(分布式系统)、修复安装及卸载测试。
38.文档测试:主要是对用户使用手册、产品手册进行测试,校验是否描述正确、完整,是否与当前系统版本对照,是否易理解,是否二义性等。
39.测试数据检查:事实告诉我们,测试数据比代码更有可能是错的,因此,当测试结果显示有错误发生的时候,怀疑代码错误前要先对测试数据检查一遍。
40.请让我的机器来运行:在某些项目中,出现一个病态的问题:系统没有问题呀,它在我的机器上是能够通过的。这就说明了其中存在着和环境相关的BUG。“是否所有的一切都受到了版本控制工具的管理?”、“本机的开发环境和服务器的环境是否一样?”、“这里是否存在一个真正的BUG,只不过是在其他的机器里偶然出现?”。所有的测试必须在所有系统要求的机器上运行通过,否则的话,代码就可能存在问题。
41.Ajax 技术的应用:Ajax有很多优点,但也有很多缺点,如果利用优点、避免缺点,是我们对新的Web2.0应用的一个挑战。而Ajax的应用最直接的问题就是用户体验,用户体验的效果直接关系到是否使用Ajax技术。“会做,并不意味着应该做、必须做”,这就是对Ajax技术的很重要的注解。
42.Ajax技术的应用:Ajax采用异步调用的机制实现页面的部分刷新功能,异步调用存在异常中断的可能,尝试各种方法异常中断异步的数据调用,查看是否出现问题。在这里遇到的一个问题就是对日期控件的操作,已经如果页面数据较多的时候的刷新。
43.脚本错误:随着Ajax、IFrame等异步调用技术的发展,Javascrīpt技术也越来越受到开发人员的重视,但Javascrīpt存在调试困难、各浏览器存在可能不兼容等问题,因此在Web系统中
================
1、页面链接是否正确;
2、关联性,一个功能是否会对其他功能造成影响;
3、按钮功能测试,删除不选、多选、翻页选择;
4、字符串长度、类型、符号、特殊符号、中英文、空格、半角全角;
5、信息输出完整性;
6、信息提交重复处理;
7、添加修改,修改重名;
8、重复提交、重复删除、多用户并发操作;
9、索引检查;
10、输入信息、光标位置、快捷键使用;
11、上传下载文件;
12、必选项测试;
13、回车、刷新、浏览键回退检查(主要是需要验证的地方);
14、直接URL链接检查;
15、密码检查、长度、半角全角;
16、不同用户权限检查;
17、系统数据计算检查;
18、系统健壮性检查;
19、确认提示检查;
20、数据注入检查,一般程序是屏蔽掉特殊字符或者敏感字符;
21、刷新检查,主要是实时刷新功能;
22、事物检查,失败异常回滚;
23、时间格式检查;
24、浏览器兼容性检查;
25、安装、文档测试;
26、测试数据检查,即对自己测试提供数据进行检查;
黑盒测试的测试用例设计方法
·等价类划分方法·边界值分析方法·错误推测方法·因果图方法
·判定表驱动分析方法·正交实验设计方法·功能图分析方法
第五篇:APP测试功能点总结
APP测试功能点总结
1.功能性测试:
——根据产品需求文档编写测试用例。
——软件设计文档编写用例。
注意:就是根据产品需求文档编写测试用例而进行测试。
2.兼容性测试:
——android版本的兼容性
——手机分辨率兼容性
——网络的兼容性:2G3G4GWIFI,弱网下、断网时
——app跨版本的兼容性
1.适配性测试:
1>.手机不同分辨率支持:客户端支持的分辨率等
2>.手机不同版本的支持:2.34.04.4等;在测试计划中:需要安排单独的时间用于android不同系统的兼容性测试,包括2.0以下版本和4.0以上等
3>.手机不同厂家系统的支持:不同厂家会有不同android系统,例如:小米,华为,锤子对市面上主流手机的支持
4>.手机不同尺寸的支持:3.5到5.0屏幕在UI显示有区别,要支持最大到最小。
2.安装、卸载测试:
1>.生成apk文件在真机上可以安装及卸载;
2>.Android手机端通用安装工具。如:豌豆荚
3.在线升级测试:
1>.验证数字签名
2>.升级后可以正常使用。
3>.在线跨版本升级。
3.性能测试:
——压力测试:
——电量流量测试:
——cup、内存消耗:
——app启动时长
——crash率
——内存泄漏
4.网络测试:
1.外网测试主要现实模拟客户使用网络环境,检验客户单程序在实际网若环境中使用情况及进行业务操作。
2.外网测试主要覆盖到wifi2G3G4G,.netwap、电信移动联通、所有可能的组合进行测试。
原则:
1.尽可能全面覆盖用户的使用场景,测试用例中需要包含不同网络排列组合的各种可能。
2.还有模拟信号被屏蔽时候。客户端的影响等。还有做外包场景测试,在高山、丘陵、火车上等特殊环境下进行全面测试
5.接口性测试:
——client端和service端的交互
——client端的数据更新和service端的数据是否一致
——client端更新时断开了。
——client端更新时service端挂了。
6.业务逻辑测试:
1.业务逻辑测试:主要测试客户端业务能否正常完成。
2.功能点测试:主要测试客户端功能点是否正常使用
3.关联性测试:主要测试客户端与pc端的交互,客户端处理完后,pc端与客户端数据一致
7.异常测试:
1.交互异常性测试:客户端作为手机特性测试,包括被打扰的情况;如来电、来短信、低电量测试等,还要注意手机端硬件上,如:待机,插拔数据线、耳机等操作不会影响客户端。
2.异常性测试:主要包含了断网、断电、服务器异常等情况下,客户端能否正常处理,保证数据正确性。
客户端侧性能测试:
1.基准性能测试:主要通过压服务器端接口及客户端在不同网络环境下响应速度。
2.大数量的测试:主要在特定环境下,客户端一次性更新大量的数据及人员列表时,客户端能否正常处理,分为三种情况:
——客户端第一次使用,第一次就更新大量数据及人员列表。
——客户端在平时更新中,更新大量的数据
——客户端已经在手机本地下载很多数据后,再次更新大量
如果想要在测试方面获得进一步的提升,那么你就需要学会使用App测试工具。一方面,通过测试工具可以代替你做重复繁琐的部分工作,你节省出的是更多的学习时间,另一方面,这些工具还会为你提供大量的游戏运行数据和日志,有了这些数据你就能更方便的判断问题发生的原因,这写数据的解读能力将是你未来的最大竞争力。