请选择 进入手机版 | 继续访问电脑版
点击联系客服
客服QQ: 客服微信:
查看: 58|回复: 50

整理软件测试审查

[复制链接]

1

主题

1

帖子

-7

积分

限制会员

积分
-7
发表于 2021-9-14 07:26:33 | 显示全部楼层 |阅读模式
软件测试复习整理

1.什么是软件测试?2.软件测试和开发的差异2.1软件测试和开发中调试的差异2.1.1目的不同。2.1.2作用2.1.3阶段2.2技术观点3。为什么要选择软件测试(zqsg)?4.要求是什么?5.重复模型8。软件测试型号8.1V型号8.2W型号9。bug  9 . 1 bug级别9.2问题9 . 3 bug生命周期的状态9 . 4 bug修正后也为10。软件测试人员和开发人员如何处理bug冲突?11.测试使用案例标准12。黑匣子测试设计测试使用案例方法1。测试使用案例1.1等价类(测试使用案例无穷无尽时)1.1.1定义1.1.2是1.2边界值(重要)1.3人也是1.4场景法1.1.1定义1 2。根据开发阶段的不同,2.1单元测试2.2集成测试2.3系统测试2.4回归测试(Regression  Testing) 2.5延期测试(smoke  testing)2.6验收测试3。各实施组织3.1测试3.1 beta测试3.1第三方测试4。手动测试4.1手动测试4.2自动化测试5。代码是否运行5.1静态测试5.2动态测试6。根据是否查询代码,测试6.1黑盒6.2白盒7。按测试进行面测试7.3容错测试7.4易用性7.5易用性7.6实用性7.7兼容性7.7.1平台兼容性7.7.2数据兼容性7.7.3之前版本的兼容性7.7.4软件和其他软件兼容性
li>7.8文档测试
  • 7.9性能测试
  • 7.10安全性测试
  • 7.11内存泄漏测试
      
  • 7.selenium
  • 7.1定位元素的方式
  • 7.2等待
  • 7.3层级框架处理
  • 7.4弹出框处理 alter
  • 7.5unittest框架


    1.什么是软件测试
  • 软件测试就是验证软件是否满足客户的需求
    2.软件测试和开发的区别
    2.1软件测试和开发中调试的区别
    2.1.1目的不同:
  • 测试:测试是测试人员检测软件是否实现了软件他应该实现的功能
  • 开发调试:调试是程序员检查代码是否实现了他想让代码实现的
    2.1.2角色
  • 测试:测试人员和开发人员
  • 调试:开发人员
    2.1.3阶段
  • 软件测试在软件开发整个生命周期
  • 软件调试:在开发阶段
    2.2技术角度
  • 软件测试对技术要求广,但是深度低,要求会使用各种技术工具(语言或者具体工具)
  • 软件开发:对技术要求比较专一,深度会高
    3.为什么要选择软件测试(zqsg)
  • 兴趣
  • 技能
  • 抗压力
  • 责任感
  • 性格特征
    4. 需求是什么
  • 满足用户的期望或正式规定的文档(合同,标准,规范)所需要的权限和技能。
  • 用户需求:最原始的需求,比较广,有可能存在不能实现的需求,所以测试人员需要对需求进行分析和验证。
  • 软件需求:经过打磨的用户需求形成的文档
    5.BUG
  • 当且仅当,软件需求规格说明存在且合理的情况下,如果软件功能和需求规格说明不相符,那说明是软件错误(BUG);
  • 当软件需求规格说明不存在的情况下,用户需求存在且合理,如果软件功能和用户需求不相符,那说明是软件错误(BUG);
    6.测试用例
  • 测试用例就是向被测试系统发起的一组集合,包含测试环境,测试步骤,测试数据,预期结果,标题,测试功能模块,优先级,重要性等。
    7.开发模型
    7.1敏捷模型:
  • scrum开发流程:产品发布会议,迭代计划会议,开发期间的每日站会,演讲会议,回顾会议。
  • 角色:产品经理(po),项目经理(SM),研发团队(st)
  • 敏捷开发模型中测试人员怎么测试?
  • 核心人物:找BUG,还需要和开发人员一起找问题产生原因
    7.2瀑布模型


  • 优点: –强调开发的阶段性; –强调早期计划及需求调查; –强调产品测试。
  • 缺点: –依赖于早期进行的唯一一次需求调查,不能适应需求的变化; –由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程; –风险往往迟至后期的测试阶段才显露,因而失去及早纠正的机会。
    7.3螺旋模型


  • 优点: –强调严格的全过程风险管理。 –强调各开发阶段的质量。 –提供机会检讨项目是否有价值继续下去。
  • 缺点: –引入非常严格的风险识别、风险分析和风险控制,这对风险管理的技能水平提出了很高的要求。这需要人员、资金和时间的投入。
    7.4增量,迭代模型
  • 增量通常和迭代混为一谈,但是其实两者是有区别的。
  • 增量是逐块建造的概念,例如画一幅人物画,我们可以先画人的头部,再画身体,再画手脚
  • 迭代是反复求精的概念,同样是画人物画,我们可以采用先画整体轮廓,再
    勾勒出基本雏形,再细化、着色。

    8.软件测试模型
    8.1V模型


    8.2W模型


    9.如何描述BUG
  • 测试版本
  • 测试环境(设备,系统)
  • 测试步骤
  • 测试数据
  • 预期结果
  • 实际结果
  • 附件(错误截图,错误日志)
    9.1 BUG等级
  • 1、 Blocker(崩溃):阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。
  • 2、 Critical(严重):系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。功能设计与需求严重不符,模块无法启动或调用,程序重启、自动退出,关联程序间调用冲突,安全问题、稳定性等。
  • 3、 Major(一般):功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性。
  • 4、 Minor(次要):界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等。
    9.2面试题
  • 系统新功能上线,发现用户使用某功能时系统崩溃,并无法修复,这时候测试人员应该怎么处理?
  • 1.回退版本(回退到系统的一个稳定版本)
  • 2.抓紧时间修复问题
    9.3BUG生命周期中的状态
  • 新建—确认–重新打开–延迟----解决—关闭
    9.4bug修复后仍存在
  • 开发人员修复了一个bug,你测试的时候发现这个bug仍然存在,可能是什么原因?
  • 1.让开发检查是否提交新代码
  • 2.测试人员没有重新发布测试环境的代码
  • 3.确实开发人员没有修改成功
    10.软件测试人员和开发人员因为bug产生冲突怎么处理?
  • 1.检查自身bug描述是否清楚
  • 2.站在用户的角度去说服开发人员
  • 3.bug定级是否准确按照公司相关文件
  • 4.测试人员要不断提高自身技术和业务水平,要能够发现bug,要定位bug产生原因,以及bug的解决方案
  • 5.开三方会议,产品经理,开发人员,测试人员一起讨论BUG的解决方案。
    11.测试用例的依据
  • 根据需求文档设计
  • 分析需求,细化需求,从需求当中提取出功能点/测试点,然后再用设计测试用例的具体方法去设计测试用例
    12.黑盒测试设计测试用例的方法
  • 等价类
  • 边界值
  • 因果图
  • 场景设计法
  • 错误猜测法
  • 正交法

    测试
  • 1.什么是软件测试
  • 2.软件测试和开发的区别
  • 2.1软件测试和开发中调试的区别
  • 2.1.1目的不同:
  • 2.1.2角色
  • 2.1.3阶段
       
  • 2.2技术角度
      
  • 3.为什么要选择软件测试(zqsg)
  • 4. 需求是什么
  • 5.BUG
  • 6.测试用例
  • 7.开发模型
  • 7.1敏捷模型:
  • 7.2瀑布模型
  • 7.3螺旋模型
  • 7.4增量,迭代模型
      
  • 8.软件测试模型
  • 8.1V模型
  • 8.2W模型
      
  • 9.如何描述BUG
  • 9.1 BUG等级
  • 9.2面试题
  • 9.3BUG生命周期中的状态
  • 9.4bug修复后仍存在
      
  • 10.软件测试人员和开发人员因为bug产生冲突怎么处理?
  • 11.测试用例的依据
  • 12.黑盒测试设计测试用例的方法
  • 1.测试用例
  • 1.1等价类(测试用例无法穷举的情况)
  • 1.1.1 定义
  • 1.1.2实例
       
  • 1.2边界值(很重要)
  • 1.3因果图
  • 1.4场景法
  • 1.1.1定义
  • 1.1.2实例: 测试页面上一个按钮:登录按钮
  • 1.界面
       

       
  • 1.5错误猜测法
  • 1.1.1定义
       
  • 1.6正交法
  • 1.6.1定义
      

      
  • 2.按照开发阶段划分
  • 2.1单元测试
  • 2.2集成测试
  • 2.3系统测试
  • 2.4回归测试(Regression Testing)
  • 2.5冒烟测试(smoke testing)
  • 2.6验收测试
      
  • 3.按照实施组织划分
  • 3.1α测试
  • 3.1β测试
  • 3.1第三方测试
      
  • 4.是否手工划分
  • 4.1手工测试
  • 4.2自动化测试
      
  • 5.是否运行代码
  • 5.1静态测试
  • 5.2动态测试
      
  • 6.按照是否查看代码划分
  • 6.1黑盒测试
  • 6.2白盒测试
      
  • 7.按照测试对象划分
  • 7.1业务测试
  • 7.2界面测试
  • 7.3容错性测试
  • 7.4易用性
  • 7.5舒适性
  • 7.6实用性
  • 7.7兼容性
  • 7.7.1平台兼容
  • 7.7.2数据兼容
  • 7.7.3向前向后兼容
  • 7.7.4软件和其他软件兼容性
       
  • 7.8文档测试
  • 7.9性能测试
  • 7.10安全性测试
  • 7.11内存泄漏测试
      
  • 7.selenium
  • 7.1定位元素的方式
  • 7.2等待
  • 7.3层级框架处理
  • 7.4弹出框处理 alter
  • 7.5unittest框架


    1.测试用例
    1.1等价类(测试用例无法穷举的情况)
    1.1.1 定义
  • 把输入(特殊情况下才考虑输出)划分成若干个等价类(有效等价类和无效等价类),从每一个等价类当中选一个测试用例进行测试,如果这个测试用例通过,我们就说这个测试用例代表的等价类通过。
    1.1.2实例
  • 例如:输入用户名(具有一定规则,8–12),进行测试,不可能全部测试完,选取一部分
  • 使用情况:测试用例太多,没有办法穷举
  • 分类:
  • 有效等价类:符合数据规则,有意义(8-12)
  • 无效等价类:不符合数据规则,没意义(12)
  • 测试的时候有效无效都需要测试
    1.2边界值(很重要)
  • 针对输入边界进行测试的设计,叫做边界值法
  • 例如:7,8,12,13位用户名
  • 等价类和边界值往往结合在一起进行测试用例的设计
    1.3因果图
  • 逻辑图:与,或,非,恒等
  • 使用情况:当输入有多个,且不同的输入对应着不同的输出,可以用因果图法进行测试用例的设计
  • 使用因果图法设计测试用例的步骤
  • 1.找出所有的输入和输出
  • 2.确定不同输入组合和输出的关系
  • 3.根据确定出的关系华因果图
  • 4.根据因果图画判定表
  • 5.写测试用例
    1.4场景法
    1.1.1定义
  • 把系统中一个一个孤立的功能点按照一定的逻辑组合起来,形成一个场景/业务,针对这个场景进行测试。
  • 首先确定场景中的每一个功能点,确定功能可能的输入和不同的输出。
    1.1.2实例: 测试页面上一个按钮:登录按钮
    1.界面
  • 按钮是否在合理的位置
  • 颜色大小是否按照UI设计稿进行设计的
  • 按钮对其他文字或者图片有没有遮挡
  • 按钮是否可以点击
  • 点击按钮是否调用了对应的接口,是否返回正确的响应
  • 调用接口进行接口测试
    1.5错误猜测法
    1.1.1定义
  • 根据测试人员的直觉,经验,知识去判断系统的某一个模块的问题,有针对性的设计测试用例。
  • 是一种补充的测试用例的方法
    1.6正交法
    1.6.1定义
  • 研究多因素多水平的一种测试用力的方法,根据郑侥幸,找出最优的输入组合,进行试验,分析实验的结果,用这些结果来衡量整体实验的结果
    2.按照开发阶段划分
    2.1单元测试
  • java单元测试框架
  • Junit
  • 白盒测试框架
  • 很重要!!!
  • 依据是:详细设计文档
    2.2集成测试
  • 按照一定的策略把单元功能模块组装起来,对组装起来的模块进行测试。
    测试阶段:单元测试之后
    测试依据:概要设计文档
    测试对象:接口
    测试方法:黑盒和白盒相结合
    测试人员:黑盒测试工程师和白盒测试工程师
    测试内容:模块和模块之间的借口,全局数据结构的测试,单模块缺陷对系统的影响,模块功能的正确性,冲突

    2.3系统测试
    测试阶段:集成测试通过之后
    测试对象:整个软件系统
    测试人员:黑盒测试工程师
    测试依据:详细设计文档
    测试方法:黑盒测试
    测试内容:功能、界面、可靠性、易用性、性能、兼容性、安全性,可移植性等

    2.4回归测试(Regression Testing)
  • 查看新引入的代码对旧的功能是否有影响
  • 原因:改BUG,系统进行正常迭代增加的功能
    2.5冒烟测试(smoke testing)
  • 对系统的主要功能和核心流程进行测试,是判断我们测试人员是否进行系统测试的依据
    2.6验收测试
    系统文档:产品设计文档,用户功能手册,产品使用说明书等
    测试阶段:系统测试之后
    测试依据:用户需求
    测试方法:黑盒测试
    测试人员:用户
    测试内容:和系统测试一致,增加了文档测试

    3.按照实施组织划分
    3.1α测试
    3.1β测试
    3.1第三方测试
    4.是否手工划分
    4.1手工测试
    4.2自动化测试
    5.是否运行代码
    5.1静态测试
    5.2动态测试
    6.按照是否查看代码划分
    6.1黑盒测试
  • 不关心软件内部代码的逻辑,结构实现,只关心输入和输出
  • 等价类划分法,边界值分析法 ,因果图法,正交实验法,场景设计法,错误推测法
    6.2白盒测试
  • 测试程序的内部的逻辑,结构的实现,是否实现了相应的功能。
  • Junit框架
  • 语句覆盖
  • 逻辑覆盖(判定覆盖,条件覆盖,判定组合,条件组合,判定和条件组合)
  • 路径覆盖
  • 循环覆盖
    7.按照测试对象划分
    7.1业务测试
    7.2界面测试
  • 布局排版,字体大小,粗细,是否斜体,图片是否清晰,页面的控件(按钮,滚动条,checkbox等)
    7.3容错性测试
  • 指的是当系统由于外界的原因发生异常时,能够自我处理,不把异常直接展示给用户,给用户一个友好提示,给用户很好的使用感受
    7.4易用性
    用户体验测试,符合常规使用习惯,给用户可以有多重选择

    7.5舒适性
    7.6实用性
    7.7兼容性
    7.7.1平台兼容
    不同平台下是否能够使用

    7.7.2数据兼容
    这个平台的数据,另一个平台是否能够使用

    7.7.3向前向后兼容
    开发了新功能,就功能能否正常使用

    7.7.4软件和其他软件兼容性
  • 下载了A软件,是否还可以下载B软件
  • (国家反垄断)
    7.8文档测试
  • 术语正确性
  • 功能一致性
    7.9性能测试
  • 响应时间
  • tps(HTTP per second)
  • 吞吐量
  • 系统运行时占用的系统资源的情况
    7.10安全性测试
  • SQL注入
  • xss
  • 病毒
  • 黑客
  • 防爬虫
    7.11内存泄漏测试
  • 用户分配了内存空间,但是没有回收,导致系统内存占有越来越多,严重情况下系统会崩溃
    7.selenium
    7.1定位元素的方式
  • 1.id
  • 2.name
  • 3.class-name
  • 4.tag-name
  • 5.link-text
  • 6.partial link text
  • 7.xpath
  • 8.css selector
    7.2等待
  • 固定等待:time.sleep
  • 智能等待:driver.implicity-wait
    7.3层级框架处理
  • switch-to.frame()去到一个框架
  • switch-to.default()去到默认框架
    7.4弹出框处理 alter
  • 1.获得弹出框的操作句柄:switch-to.alter
  • 2.关闭弹出框:alter.accept
    7.5unittest框架
  • 测试固件:前setUp(),后tearDown()
  • 组织测试套件的方式:
  • addTest(一个一个加)
  • makeSuite(一个类所有的测试方法)
  • TestLoaer(一个类所有的测试方法)
  • discover(一个文件夹下,某种命名规律的所有文件里面的测试方法)
  • 测试方法默认的运行顺序:0-9 > A-Z > a-z
  • 忽略测试用例的执行 @unittest.skip(“skipping”)
  • 断言:判断预期结果和实际结果一致
  • 形成http report
  • 数据驱动ddt(Data Driven Testing),安装:pip install ddt,
  • @ddt,@data @unpack @file-data
  • 数据驱动测试方法的执行
  • 回复

    使用道具 举报

    1

    主题

    367

    帖子

    -163

    积分

    限制会员

    积分
    -163
    发表于 2021-9-14 07:28:30 | 显示全部楼层
    我是个凑数的。。。
    回复

    使用道具 举报

    1

    主题

    364

    帖子

    -151

    积分

    限制会员

    积分
    -151
    发表于 2021-9-14 07:48:36 | 显示全部楼层
    好好 学习了 确实不错
    回复

    使用道具 举报

    1

    主题

    354

    帖子

    -138

    积分

    限制会员

    积分
    -138
    发表于 2021-9-14 08:08:53 | 显示全部楼层
    支持一下
    回复

    使用道具 举报

    1

    主题

    379

    帖子

    -157

    积分

    限制会员

    积分
    -157
    发表于 2021-9-14 08:29:12 | 显示全部楼层
    难得一见的好帖
    回复

    使用道具 举报

    1

    主题

    352

    帖子

    -154

    积分

    限制会员

    积分
    -154
    发表于 2021-9-14 08:54:31 | 显示全部楼层
    好好 学习了 确实不错
    回复

    使用道具 举报

    1

    主题

    357

    帖子

    -150

    积分

    限制会员

    积分
    -150
    发表于 2021-9-14 09:18:50 | 显示全部楼层
    支持一下
    回复

    使用道具 举报

    0

    主题

    338

    帖子

    -108

    积分

    限制会员

    积分
    -108
    发表于 2021-9-14 09:38:59 | 显示全部楼层
    小手一抖,积分到手!
    回复

    使用道具 举报

    0

    主题

    361

    帖子

    -166

    积分

    限制会员

    积分
    -166
    发表于 2021-9-14 10:00:31 | 显示全部楼层
    小手一抖,积分到手!
    回复

    使用道具 举报

    1

    主题

    394

    帖子

    -145

    积分

    限制会员

    积分
    -145
    发表于 2021-9-14 10:22:27 | 显示全部楼层
    好好 学习了 确实不错
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|无图版|手机版|小黑屋|汕头@IT精英团

    Powered by Discuz! X3.4 © 2021 Comsenz Inc.

    GMT+8, 2021-9-27 03:20 , Processed in 0.265200 second(s), 19 queries .

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