测试——Bug+用例篇

1、如何创建Bug

测试——Bug+用例篇_第1张图片

创建Bug的要素:

  • 问题出现的版本:edge 版本 120.0.2210.144 (正式版本) (64 位)
  • 问题出现的环境:Windows家庭版10
  • 出现的步骤:1、打开edge浏览器,输入网址,2、等待页面渲染完成,发现与预期不符
  • 预期结果:二维码与登录界面不会遮挡,都会显示出来
  • 实际结果:二维码被遮挡住
  • Bug归属:前端问题
  • Bug等级:一般

2、Bug的级别

Bug存在着在不同的严重级别,不同Bug级别惩罚机制不一样,不同的Bug等级也跟开发人员的开发质量有直接关系。

常见的级别:一般、次要、崩溃、严重。

3、Bug的生命周期

  • New:测试人员创建了一个Bug
  • Open:开发人员要去确认是否是Bug,是Bug的话状态就改为Open
  • Rejected:不是Bug的话就拒绝
  • Fixed:开发人员修复完成之后将Bug的状态改为Fixed
  • Delay:确认是Bug之后,如果Bug的优先级比较低且开发人员不能立即修复Bug,状态就改为Delay
  • Closed:Bug确认修复完成之后,测试人员将Bug改为Closed
  • Reopen:Bug确认修复未完成,测试人员将Bug状态改为Reopen

其状态转换图为:

测试——Bug+用例篇_第2张图片

4、跟开发产生争执怎么办?

  1. 多反思自己,是不是Bug创建的时候描述的不太清楚,批判性思维
  2. 开发人员对Bug级别不认可,Bug的定级一定要有理有据(测试人员需要明确企业Bug定级规范,拿着规范去跟开发人员沟通,为什么这样定级)
  3. 合理有好的进行沟通,站在用户的角度进行反问:如果你是用户,你能接受这样的功能吗(提Bug必然会增加开发人员的工作量,有些小问题不想解决)
  4. 不接能够发现问题,最好也能提出解决问题的方案(仅供开发参考)
  5. 如果确实是Bug,友好沟通已经不能解决问题,那么就召开Bug评审,需要有相关的代表来参加:产品代表、开发代表、测试代表:

                1)如何解决bug

                2)如何预防类似的Bug再发生

5、测试用例

万能公式:功能测试+性能测试+界面测试+兼容性测试+易用性测试+安全测试

  • 功能测试:可能来时需求文档(软件的功能),可能来自生活经验(水杯)
  • 性能测试:功能没有问题不代表性能一定是好的,性能往往表现在一些极端的情况下
  • 界面测试:颜色、形状、大小、材质、文字、输入框、图片......可以看到的所有元素
  • 兼容性测试:浏览器兼容性、版本兼容性、系统兼容性、数据兼容性
  • 易用性测试:软件是否具备简单易上手的属性,是否有提示
  • 安全测试:密码是否加密、数据库是否对隐私密码加密、是否防止SQL注入

SQL注入:

假如在前端搜索输入的关键词是 1 or 1 = 1

其代码为 :select id , info from where name = 1 or 1 = 1;(1 = 1 恒成立)

导致全表以数据返回

6、测试方法

等价类

  • 定义:依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,增容认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。
  • 等价类分为无效等价类和有效等价类:

              无效等价类:针对需求文档的要求是没有意义的集合。 

              有效等价类:针对需求文档的要求时有异议的集合。

  • 步骤:首先确实有效等价类和无效等价类,然后再编写测试用例。

边界值:是指有效边界值和无效边界值

判定表(设计测试用例步骤):

  1. 确认输入条件和输出条件
  2. 找出输入条件和输出条件之间的关系
  3. 画判定表
  4. 根据判定表编写测试用例

场景设计法:基本事件流和备选事件流(在基本事件流的过程中的意外)

错误猜测法:依赖测试人员的工作经验和积累

7、测试分类

测试——Bug+用例篇_第3张图片

测试——Bug+用例篇_第4张图片

  • 测试——Bug+用例篇_第5张图片

灰盒测试和白盒测试都需要关注代码,一般都是开发人员使用的,但是测试人员也可以使用灰盒测试。

  • 问:为什么不能用灰盒测试来取代黑盒测试和白盒测试?

答:因为灰盒测试没有白盒测试那么详尽,也没有黑盒测试广度大,所以不能取代。

  • 问:那种测试方法用的多?

答:黑盒测试和白盒测试测试人员都会使用到,在工作根据具体情况来选择使用黑盒测试和白盒测试,通常情况下测试人员使用黑盒测试多一些。

  • 问:自动化测试能取代人工吗?

答:不能,自动化测试也是测试人员来写的,是有局限性的,而且自动化测试只是协助测试人员进行测试的一种工具。

  • 冒烟测试:

开发人员完成开发任务之后,交给测试人员进行测试的第一步,评估软件/系统是否具备测试的条件。

  • 回归测试:

对历史版本、历史功能进行测试,保证功能都是符合要求的,一般用自动化来进行回归测试

你可能感兴趣的:(bug,java)