51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 6087|回复: 14
打印 上一主题 下一主题

[原创] 测试新人告诉你怎么设计测试用例,攻防测试技术+如何做探索式测试(上)-----测试不难

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-5-13 17:20:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
攻防测试技术(我自己起的)
攻防测试即结合多方思维指导测试,主要是通过应用各种思维、测试技术、测试方法(PS:无论测试中成为什么技术也好,什么方法也好,其实想细了就是一种测试思维而已)来指导测试人员在实际工作中测试工作的方向,是一本指南,是一种思维的指导。
        测试用例在工作中相当重要,为什么?在开展软件测试工作前,需要先搭建测试环境,硬件环境要不要测?软件环境要不要测?网络环境呢?还有个别软件承载的直接平台不同的关系所导致的不同的问题,例如界面分辨率呢?屏幕大小呢?都可能是要测的吧?怎么开始测试工作,首先肯定得应用测试用例。无论到后面你开展软硬件的兼容性测试还是软件的功能测试、还是自动化测试、还是性能测试、负载测试、还是安全性测试、外接硬件设备测试、等等也好,都得应用测试用例。测试用例就是一个文档告诉我们该怎么测试,后续用什么工具都好,都只是执行测试而已。知道了吧?所以测试用例的设计很关键,设计的好坏就直接影响了你测了什么、你怎么想的、该怎么执行。
现在聊聊本人在设计测试用例时所应用到的思维,往往我们很多刚接触测试的新人来说,我们会学习很多经典的测试方法,例如:等价类划分法、边界值法、场景法、测试大纲发、因果图法、判定表法、正交表法等等。通过这些测试方法来帮助我们在Excel 或者Word上设计测试用例,但是,是否你会在测试一个足够复杂的软件的时候,发现这款软件需要用到好几个的方法?或者这些方法不足以满足测试的思维需求?有没有一些狡猾的bug能逃脱我们的测试网?除了我们目前所了解到的测试方法以外还有没有其他方法?还有没有其他的东西能帮助我们更好的设计测试用例?我们在想这些问题的时候,可以有些逆向的思维,什么是测试方法或者测试技术?它是怎么来的?
        测试方法是什么?其实它在测试领域来说不就是基于一种思维方式而诞生的用于测试软件的方法吗?它是基于某一角度的思维而诞生的。还有就是技术,测试软件,我们经常会说到测试技术,黑盒测试技术、白盒测试技术,往往也是从一种不同的视角的思维去分析软件。所以,想要设计好测试用例,就要尽可能的应用更多的思维来分析软件。举例,等价类划分法就是一种基于需求的,等价划分用户输入的数据的思维来分析数据。其他的不都一样吗?边界值的思维呢?场景法不就是考虑用户实际的使用可能遇到的场景?等等。。。每种测试方法其实都是一种测试思维。一种思维,可以这样说:单一角度的思维永远都会有它的局限性、狭义性。所有只用一种思维来设计测试用例,往往都是坐井观天的。我们应该把所有我们所学过所见过的方法和技术萃取出它的测试思维方式,再应用这些思维来分析数据设计测试用例,我们才能设计好测试用例。
        开始设计测试用例前还有模板的问题,Excel是我经常用来分析数据和编写测试用例的辅助工具。我之前在学习测试方法的时候,往往一种方法都伴随着一个分析数据的模板。那问题来了,如果我们要测的软件需要用到十几种测试方法、技术和思维怎么办?有些还没有模板呢。不过没关系。模板是设计出来的,我们也可以设计出来。在设计测试用例的时候,就是我们利用测试辅助工具Excel或者Word等文档结合思维、技术、方法来分析被测系统的过程。所以,我们得先设计好一个模本,能方便我们分析数据,设计测试用例,还有提醒我们哪些方向没有想到还没有测到。并且,这个模板不是落后的,是可以持续集成更多测试相关的思维。是可更新的也具有良好的可读性和重用性。有这么一个模板,我们可以实际的应用到工作中,让它为我们服务,提升设计和编写测试用例的速度,也时刻提醒我们哪些方面我们没考虑到。不过这里我得多说一句,测试中,流程是拿来应用的(模板也一样),不要被流程局限了个人的主观能动性。指南,只是一本参考书。
        我已经有了我自己的模板,就是我称为攻防测试技术的模板,它的由来和名字有一些故事,它不是创新,是本人的自学积累,实际工作当中,我除了应用模板以外,还会做一些探索式测试,我后面会提到怎么做探索式测试,这里就不多提了。让我们看看它怎么编写的,怎么应用的,也看看我是怎么想的吧。
        这里是我的功能测试-攻防测试模板(Excel):
搭建测试环境Sheet
        每个测试环境可能会影响到软件的方方面面都必须罗列出测试点,测试点就是一条测试用例,当然也就是模板中的一条数据分析。在这里我说说我们做软件测试,往往至少也要做硬件方面的部分功能测试,毕竟软件和硬件是相互依存的,就好像我们不能100%的知道我们所测的软件(假设是PCC/S结构的软件)会不会对PC上的一个端口有影响一样。同样,端口应用对软件有影响吗?不知道吧。所以得测。搭建测试环境往往也要考虑到承载被测软件硬件环境的兼容性问题等等。其实也没什么困难的,开始你的黑盒测试呗,多考虑可能会应用的硬件或软件,建立多个真实的测试环境测试,原理先不考虑。真实环境建立困难就用虚拟技术。当然,真实肯定最好的。
        设计搭建环境的测试用例要多考虑软件所直接承载的平台,我就举些例子吧:
手机端(与PC\Ipad\智能手表\智能眼镜\智能家居应用软件都有类似的测试点)
        BS软件:不同的浏览器、浏览器版本、浏览器设置、网络环境等
        CS/嵌入软件:不同牌子的手机、手机操作系统、手机设置、屏幕大小、分辨率、基本软件的兼容性问题、被测软件的子软件问题、外界设备等多方面的兼容性问题、硬件基础功能、网络环境、软件共存及功能共存问题(手机上能打开多个QQ吗?)等               
        PC端也好、移动设备、智能设备也好,市面上直接承载软件的平台无非要么是硬件、操作系统、浏览器或者虚拟技术软件。我们要做的就是多考虑,多沟通,多了解业务,多查找。
       
等价类划分模板Sheet
有了测试环境,现在开始测试软件了,从我们开始测试就要利用多角度的思维来分析数据,我把多种思维和方法结合成了5Sheet,分别是等价划分模板、测试大纲模板、场景模板、判定表+因果图模板、正交表模板,但是每个模板并不代表着一种方法,例如等价类划分模板我只是应用了它的文档格式,再融入其他的思维来进行数据分析,以上5个模板同时使用的可能性不大,但是场景法模板(考虑实际业务场景的方法)必须使用,任何软件的测试都离不开场景法的应用,所以基本是场景法模板+其他模板来应用。
好了,现在来看看我模板的作用吧。
等价类划分模板(一般用于软件界面切换少的测试)
测试思维:
等价类划分法                                   
有效等价类划分
无效等价类划分
边界值法                                       
划分输入数据的边界值
探索式测试技术                          
广度变量,模拟用户输入不同类型的数据
          (注意:特殊字符集,会找到隐藏在功能背后的安全性问题)
                                       
深度变量,模拟用户输入同一类型数据,但是                                                数据具有不用的特征、行为、层次
输入,考虑不用输入的方式,特别是粘        贴        复制什么的导                航,界面之间的转换等,Web中链接的导航是否正确
重复操作事件源,重复的点击按钮会怎样?要测吧。
时间/持续时间,软件运行24小时,还能正常吗?响应时间是        多少秒,验证码的持续时间呢?
功能共存与切换,不同软件的功能可以共存吗?你玩手机的时        候,电话来了会怎样?我能切换出去吗?切换回来还正常吗?
等等        。。。。       
表单的后面我特意留了一空白格,就是为了可以持续的添加新的思维用以测试。这里特别举例说说广度变量,很简单的假如你要测一个c/s软件,类似于qq,你登陆的时候有输入用户名和密码,这个时候你用广度变量来分析,你就要注意了,我能不能输入数字?英文字母呢?符号呢?可不可以输入一段SQL语句?会不会引起安全性的问题?例如’ or 1=1 --  ,对吧。一些关键字符集要特别留意。
还有深度变量, 以前Excel里面有个bug,在一个表格中,5/(1+2)能正确运行,但是5/12/12/(2+1)))就出bug了 ,你怎么找出这类bug?


累了,先吃饭吧。。。后面看心情再写吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏16
回复

使用道具 举报

该用户从未签到

推荐
发表于 2015-6-16 13:10:00 | 只看该作者
这么好的帖子,没人顶。楼主写的太好了,真幸运能看到这个帖子,学习了,谢谢楼主分享!
回复 支持 1 反对 0

使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-31 08:59
  • 签到天数: 975 天

    连续签到: 1 天

    [LV.10]测试总司令

    3#
    发表于 2015-5-14 08:21:21 | 只看该作者
    很好的总结,
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-9-12 08:33
  • 签到天数: 543 天

    连续签到: 1 天

    [LV.9]测试副司令

    6#
    发表于 2015-6-17 09:29:40 | 只看该作者
    总结的不错,赞个
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2015-7-2 14:58:02 | 只看该作者
    谢谢经验分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2015-7-2 14:58:11 | 只看该作者
    谢谢经验分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2015-7-16 13:37:36 | 只看该作者
    楼主怎么没更新了呀
    楼主我是个新人,刚入行2个月,目前公司是我一个测试,就是需要点点点,不走任何流程。我现在平时就看一些基础理论。现在特别想学会怎么写测试用例,看了论坛很多帖子,不知道从何入手
    比如说一个单个的模块叫我写个测试用例,我可能糊照葫芦画瓢写出来。但是站在一个项目的角度,不知道怎么下手了,比如模块和模块之间怎么写测试,是都在一张表格上面还是模块单独写等等太多问题了,可怜我都没有看过一个完成的测试流程和测试用例。

    望大神多多指教啊  一定要更新下去,码一个,坐等
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2015-7-16 13:38:31 | 只看该作者
    楼主怎么没更新了呀
    楼主我是个新人,刚入行2个月,目前公司是我一个测试,就是需要点点点,不走任何流程。我现在平时就看一些基础理论。现在特别想学会怎么写测试用例,看了论坛很多帖子,不知道从何入手
    比如说一个单个的模块叫我写个测试用例,我可能糊照葫芦画瓢写出来。但是站在一个项目的角度,不知道怎么下手了,比如模块和模块之间怎么写测试,是都在一张表格上面还是模块单独写等等太多问题了,可怜我都没有看过一个完成的测试流程和测试用例。

    望大神多多指教啊  一定要更新下去,码一个,坐等
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2014-10-27 17:13
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    11#
    发表于 2015-7-16 16:26:27 | 只看该作者
    写的很棒,顶上去!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2015-7-17 19:23:32 | 只看该作者
    巷子里的小夕阳 发表于 2015-7-16 13:38
    楼主怎么没更新了呀
    楼主我是个新人,刚入行2个月,目前公司是我一个测试,就是需要点点点,不走任何流 ...

    帖子居然还在。哈。工作忙,所以不能常上51。51对我做安全测试的平台没什么可学习的。建议你多看看一些功能测试的方法,多总结。不多。等价类划分法、边界值、场景法、判定表、因果图、测试大纲、错误推测、正交表法。了解这个方法怎么用的,再思考这些方法是基于什么思维诞生的。哦,再看看关于探索式的测试的书籍,网上有,样式不多,买那几本都看看。探索式方法的思维又是怎么来的,为什么它这么火。你想通了,测试领域就可以跳跳自动化或者性能或者安全领域了。你是的男生吧?别指望遇到大牛指导了,可望不可求。靠自己吧,不动就问,多看书,多总结。我也是这么过来的。哦。 英语要学好,再看看国外的书。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2015-11-27 11:58
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    13#
    发表于 2015-9-28 15:19:59 | 只看该作者
    感觉很明了,
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2015-12-8 16:56
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    14#
    发表于 2015-12-2 11:22:10 | 只看该作者
    巷子里的小夕阳 发表于 2015-7-16 13:38
    楼主怎么没更新了呀
    楼主我是个新人,刚入行2个月,目前公司是我一个测试,就是需要点点点,不走任何流 ...

    excel列测试点不太方便,建议使用Xmind让自己理清测试思路,先分大类,基本功能、交互、性能、压力。。。
    然后一个一个套进去
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-20 17:37 , Processed in 0.078726 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表