发表于: 2018-06-08 09:07:57
1 759
补昨日日报
今日任务:了解测试方法得分类,使用场景和对应得工具使用,以及方法得优缺
遇到得问题:性能测试工具安装不上,教学视频难找
收获:
根据是否检查代码分类:
黑盒测试:又称功能测试,主要测试软件实际功能是否和需求功能一致
常用方法:等价类划分法,边界值判断法,因果图法,正交法,错误猜测法,状态迁移图法,流程分析法 方法不是孤立使用得,经常会进行结合,等价值和边界值一般用于范围类,因果图和正交一般用于条件得组合,流程分析法一般用于测试总体得。
主要测试点:1,是否有功能遗漏以及已实现功能得正确性;2,在接口上,是否可以正常输入已经输入之后是否能够正确执行;3,数据结构哦或外部数据库是否正常访(数据敏感性);4,性能上是否满足要求(系统响应时间,并发量,吞吐数,系统延迟时间,资源利用率);5,界面是否正确
优点:大型单元会比白盒效率高,操作性强,易发现错误,贴近用户角度
缺点:覆盖量化难,黑盒测试得自动化复用性低,维护成本高,没有清晰得规格,测试用例难设计
常用阶段:测试得后期
常用来测试:功能,容量(大数据环境下得局限性,可检查系统效率),安全性,负载(短时间处理大数据和多功能得能力),恢复性(系统崩溃之后恢复得时间),标杆(软件和硬件得组合),稳定性,可靠性
白盒测试:又称结构化测试,基于代码得测试,逻辑驱动测试,特点是测试代码,主要利用逻辑得覆盖率来检查测试得完整性
逻辑分为六个:语句,条件,条件组合,路径,分支,判定
常用方法:静态技术:代码检测法(代码审查,走查),静态结构分析(),静态质量度量法 动态技术:逻辑覆盖率测试,程序插装(在被测程序中插入检验性操作)
优点:1,迫使测试人员去理解代码;2,可以检查到隐藏在代码内部得错误;3,代码得检查更加彻底;4,可以检查到代码得每个分支和路径
缺点:1,无法检测到遗漏得路径和数字敏感性(指对等价类得数字中可以引起错误得数字得检测);2,贵;3,不能检查需求正确性
常用阶段:集成测试,单元测试,系统测试
黑白盒得关系:互不相同,补助关系。一般建议先黑盒,确认没问题,再白盒
灰盒测试:白盒黑盒测试交叉使用,一般用于集成测试
静态测试和动态测试:
静态测试:就是不操作程序,通过文档和代码,来检查是否符合标准
方式:互审(程序员互相检查)---------走查(小组互相检查)--------会议
常用技术:1,手工:检视,走读 ;2,自动:静态验证(结果一般用布尔语句表示,输入预期结果和实际结果比较,看返回得是对还是错),语法分析器(检查程序和文档是否一致),符号执行器(用于检查数学计算,模拟程序,计算不同位置上得值)
动态测试:运行被测程序,比较运行结果和预期结果,分析运行效率,正确性和健壮性
分析工具:测试覆盖率分析,跟踪,调整,模拟,断言检查
手工测试和自动化测试;
手工测试:从用户视角检查软件
自动化测试:利用第三方工具控制测试的自动化执行,并评断预期结果和实际结果,常用于单元测试,接口测试,性能测试
性能测试:集中于系统如何在特定得负载下运行系统执行,根据一定得基准和标准来应对,(通过自动化得测试工具模拟多种正常,峰值,异常负载得情况,来对系统得各个性能指标进行测试)
主要类型是:负载测试
负载测试:测试过程中,逐步增加负载,并记录系统得反应时间和持久能力,得出测试在正常情况下得最大负载,负载可能意味着并发用户或事务,这个负载是在正常工作条件得参数范围内得(简单来说,就是在规定范围内,逐步加大负载,观察系统得反应时间和持久能力)
压力测试:又名疲劳测试,测试极限情况下得压力情况,确定系统得最大承载量,目标是检测出软件得稳定性,看何时会出现故障。(负载是在正常得范围外得)
稳定性测试:稍大于正常业务量得负载,长时间去对程序测试。
尖峰冲击测试:短时间内超过正常负荷得性能反应
耐力测试:也叫浸泡测试,软件性能如何在长时间执行正常 工作 目标是检查系统,例如内存泄漏
可扩展性测试:能否有效处理越来越多得工作负载,还有测试,当CPU和内存资源变更时,工作负载保持相同得水平
容量测试:又称洪水测试,用大量得,预期数据量下得执行效率
常见性能问题:
速度,瓶颈效益(数据流突然停止,有没有能力处理),较差得可扩展性(无法处理所需数量得并发任务,导致延迟),软件配置问题(没有设置到一个级别来处理),硬件资源不足(暴露出物理内存限制和低效率得CPU)
测试七步走:
1, 确定测试环境
2, 确认性能标准(反应时间,吞吐量,限制)
3, 计划和设计性能测试
4, 配置测试环境
5, 执行测试设计
6, 执行测试
7, 分析,报告,在测试
性能测试工具:
LoadRunner
Sikperformer
Jmeter(JAVA开源)
WebLoad
ApacheBench
LoadUI(接口性能测试)
兼容性测试:
1,软件本身得兼容性:新开发得软件功能要对之前得软件功能,数据进行兼容(向前兼容,旧版本系统可以打开新版本文件,并忽略新版本中得额外功能。向后兼容,新版本可以打开旧版本文件,能处理数据)
2,不同平台下得兼容性,
3,软件对运行设备得兼容性
4,软件互操作性,有功能交叉得产品,相互的运行正常
兼容性测试工具:
1,BrowserShots (基于真实浏览器得截图比对得一个工具)
输入一个URL,在选定得浏览器上访问,并且截图(被测系统运行得界面),通过不同截图得比对,观察差异
2,Browser Sandbox 通过不同得插件,实现模拟器得测试
都是基于模拟真实浏览器得访问情况来判断
3,Google浏览器兼容测试插件(http://www.w3help.org/) google得插件
主要从页面代码层面。通过不同浏览器得内核来判断代码得兼容性,给出分析建议
测试时间:软件已经相对稳定了
评论