测试开发进阶

按照测试对象划分

界面

用户是通过界面和软件进行交互的,界面设计的好坏,直接影响了用户对软件的印象。界面测试又称之为UI测试

  1. 测试软件界面元素的完整性、正确性、一致性。
  2. 软件的界面排版是否合理。
    3>测试软件界面的自适应性。(界面适应不同的业面大小)。
  3. 业面的控件功能正常。(按钮的有效状态和失效状态是可以区分的,有效高亮,失效置灰不能点击)
  4. 界面的设计(颜色,布局)考虑当下事实。
    界面常见的错误:
    1>不合适的快捷键 2>文本丢失 3>截断 4>没有对齐 5>文字自动换行 6>文字重叠 7>重复的快捷键
  5. 可靠性的测试:可靠性指软件正常运行的能力,软件正常运行的时间和软件整体运行时间的百分比。
    可靠性 = 软件正常运行的时间/(非正常运行的时间+正常运行的时间)
    影响软件可靠性的因素:网络,软件环境(安装的环境),硬件环境,软件自身。
    怎样去测试软件的可靠性?:软件可以运行一周或者两天,记录出现故障的时间,计算百分比。

容错性

系统发生异常,由于错误操作导致软件系统发生错误,软件自我消化掉错误,或者进行了修改,不让客户感知,叫做系统的容错性。

常见容错性的处理
  1. 数据的容错性
  2. 校验容错性
  3. 界面的容错性:复杂操作的提示、危险操作的提示、危险按钮的屏蔽等等。
  4. 环境的容错性:软件所在的环境发生故障,软件有备用方案,可以让用户无感知切换。
灾难性恢复测试

人为的让系统发生故障,看系统自身是否具有对于用户数据的存储和恢复是否快速。

文档测试

文档的术语,文档的完整性、一致性、正确性和易用性。

兼容性测试

  1. 软件自身的兼容性:软件向前后的兼容性,软件新开发的功能不能影响就功能的使用,不能够影响后续功能的开发。
  2. 软件对于数据的兼容性(用户数据),设计新的功能要考虑用户自己的数据。
  3. 软件对于应用平台的兼容性。
  4. 软件对于第三方软件或者第三方软件数据的兼容性。

易用性测试

  1. 符合一些标准和规范。
  2. 直观性:用户期望的操作在用户的可见范围之内。
  3. 灵活性
  4. 舒适性
  5. 实用性

安装卸载

  1. 不同的安装卸载途径安装卸载正常。
  2. 安装卸载过程中是否可以正常安装暂停。
  3. 安装过程中空间不足,有提示。
  4. 正常的卸载软件,如果卸载取消了,那么软件可以正常使用。
  5. 安装卸载过程中出现异常,软件可以正常处理。

安全性测试

安全性指信息安全,软件保护用户的数据、隐私以及数据传输过程中的安全性,防止病毒入侵和黑客攻击,输入域能检测携带病毒的字串或者文件。
**安全性测试:**代码走读挥着工具检查。

性能测试

资源泄漏,资源分配不均衡,线程死锁,查阅速度越来越慢,相应越来越慢。测试性能指标TPS(每秒事务处理量),每秒HTP请求数,点击率,吞吐量,响应时间,cpu资源利用率等等。

内存泄漏

产生的原因:
1.程序中写的有问题,没法回收内存。
2. API函数使用不正确,无法回收内存。
3. 非配内存后忘记回收内存。

按是否查看代码划分

黑盒测试

不去关心代码内部的逻辑结构,不去查看代码,只关心软件功能的外部的输入和输出是否满足用户的需求。相当于将软件的内部实现屏蔽掉了。
优点:

  1. 不用去关心软件内部的实现,不用去看代码。
  2. 站在用户的角度去设计测试用例,容易培养产品思维。
  3. 设计测试用例是根据测试需求来设计的,不容易遗漏需求。
    测试方法:等价类、场景法、边界值、错误猜测法、因果图、正交法。

白盒测试

分析代码的逻辑结构,代码的风格是否和公司的设计一致,分析代码的逻辑结构,对代码进行测试,查看代码是否实现了需求。

单元测试——>白盒测试

白盒测试的测试方法:语句覆盖、路径覆盖、逻辑覆盖(判定覆盖、条件判定组合覆盖、判定和条件覆盖、条件覆盖、条件组合覆盖)、循环覆盖。

灰盒测试

既关心软件功能的额输入和输出,也关心软件内部程序的实现。

按照开发阶段划分

测试金字塔

在这里插入图片描述

特点:越王底层,测试效率越高,定位问题越容易,测试独立性越高,耦合性越低。

单元测试

单元测试是代码测试代码,测试效率高。

  1. 单元的是阶段:指的是对软件组成的最小的单元进行测试,查看单元的功能是否正常。
  2. 测试阶段:测试前(TDD)测试后。
  3. 测试方法:白盒测试。
  4. 测试依据:详细设计文档:软件测试模型里面的V模型中的单元测试相对应
  5. 测试内容:接口测试,局部数据结构测试哦,路径测试、接口测试、循环测试。错误处理测试。
集成测试

按照一定的逻辑和策略把单元模块组合在一起,形成一个具有完成功能的大模块。

  1. 测试阶段:单元测试
  2. 测试方法:灰盒测试
  3. 测试依据:概要设计文档
  4. 测试内容:模块功能的正确性,组成模块的单元之间的接口测试,全局数据结构测试,单个模块的功能缺陷对整个模块的影响。
回归测试——>黑盒测试

对软件系统进行全面的功能和非功能测试

  1. 回归测试
    当系统引入新的代码时,测试人员往往需要验证新的代码对旧的功能产生的影响,所作的测试为回归测试。主要在增加新功能或者修改BUG时候使用,一般采用自动化测试。
  2. 冒烟测试——>准入原则
    在软件开发完成后,要对软件的基础功能和核心流程进行测试,测试通过之后,才可以计入正式测试环境,如果测试不通过,测试人员有权利打回,让开发人员重新修改直到完成冒烟测试。
  3. 验收测试
    在软件进行上线钱最后一次测试

按照实施组织划分

  1. α测试
    在β测试之前进行的,将用户或者非测试开发的人员请到开发现场进行测试
  2. β测试
    让实际用户在实际体验使用环境中进行测试,测试完成之后对问题进行统一反馈。
  3. 第三方测试
    是软件第三方评测机构,按照软件行业标准规范对软件进行测试。
    α和β测试的区别:测试环境不同、测试时间集中程度不同、α测试优先于β测试。

按照代码是否运行划分

  1. 静态测试:不运行代码,通过检查代码风格,格式是否符合公司的规范标准,检查代码的逻辑结构是否满足需求要实现的功能。
  2. 动态测试:运行代码,给程序响应的输出,看是否得到期望的输出。

按照是否手工测试划分

  1. 手工测试:按照测试用例,手工测试系统的功能。
    缺点:量大容易出错,效率低,有些极端情况无法测试到。
    优点:进行探索性测试,比较灵活。
  2. 自动化测试:机器按照人为设定好预设条件运行,这些预设包括正常的和异常的没去检查软件系统中有没有符合设定的条件。自动化测试是将手工测试用例转化为脚本运行。

按照地域进行划分

**软件国际化:**进行软件设计和开发的时候,使用一种工程即使,使得软件在转化为不同国家的语言的时候,可以不用修改源码,适应不同的语言,不同国家人民的风俗习惯。

软件按国际化测试

  1. 外观上看界面功能有没有缺失,能否正常使用。
  2. 看是否适应这个国家人的使用习惯,如文字,日期,风俗等。
  3. 度量单位是否一致:货币,质量单位等。
  4. 不同的分辨率下,软件的正常使用与展示。
  5. 软件在不同的硬件设备上运行是否有问题。

本地测试(具体到某一个国家)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值