1 --- 冒烟测试、可用性测试和回归测试的区别?

在测试领域中,冒烟测试(smoke test)、可用性测试(sanity test)和回归测试(regression test)彼此之间很相似,范围也有重叠,所以比较容易混淆。

都是在需求变更或问题修改后对系统全面测试之前的一种预测试,都是为了发现是否在界面和代码层面引入了问题。

可以用一个和河流相关的类比来更好的理解它们之间的差别,在类比之前,先了解下这几个测试的简单定义:

  • Smoke Testing:测试新特性有关的所有方面 (广度) ,但不深入,用以判断我们是否需要执行进一步的测试。
  • Sanity Testing:测试新特性的有限正常功能,深入测试。
  • Regression testing:回归新特性所有相关功能,避免引入代码变更存在问题以及引入新问题,深入全面。

如果拿一条河流来比喻,比如1000英尺宽,在水里含有杂质(可以比作软件中的bug),那么这三种类型的测试可以被看作如下:

  • 对于Smoke Testing:为了找到河面所有的杂质,但不包括水面以下的。
  • 对于Sanity Testing:为了找到某个特定范围内所有的杂质(比如200英尺半径内),这不包含所有表面的杂质,但包含了那个范围内水面下直到水底的杂质。
  • 对于Regression Testing:为了这片水域所有的杂质,表面的以及水面以下的。

2 --- 软件测试类别与方法

软件测试分类

软件测试方法汇总

经典软件测试技术分类

3 --- 单元测试和白盒测试的区别

测试目的不同

  • “白”是测试程序的整体逻辑
  • “单”是测试程序中一个独立的模块

执行人员不同

  • 白盒一般是由专门的白盒测试人员完成
  • 单元测试一般由程序员自己完成

单元测试

定义:开发人员针对程序模块(软件设计的最小单位)来进行正确性检验的测试。

开发人员编写单元测试用例并执行,验证单元模块是否得出预期的结果

单元测试是粒度最小的软件测试。子系统只有通过单元测试之后才集成到大系统中。

白盒测试

定义:指测试人员可以直接访问内部数据结果、算法及其代码实现的测试。

常见的方法:接口测试、代码覆盖率测试和缺陷注入。

4 --- 测试策略的含义

描述测试工程的总体方法和目标。

根据测试需求,描述在什么测试阶段,依据不同的测试要素和目标,进行什么种类的测试,使用什么样的测试方法和工具。

测试策略的制定主要包含如下内容:

  • 确定测试过程要使用的测试技术和工具;
  • 制定测试启动、停止、完成标准;
  • 进行风险分析和应对方案;
  • 根据测试需求分解测试单元,编写测试计划;

Testing - Tips的更多相关文章

  1. (转) [it-ebooks]电子书列表

    [it-ebooks]电子书列表   [2014]: Learning Objective-C by Developing iPhone Games || Leverage Xcode and Obj ...

  2. 转:测试用书(出处:cnblog--liangshi)

    列表格式为:图书分类.中文书名.英文书名.作者.排名不分先后,用红色标记出我推荐的书籍. 测试入门 软件测试(第2版) Software Testing (2e), Ron Patton 一本测试入门 ...

  3. <转>年终盘点!2017年超有价值的Golang文章

    马上就要进入2018年了,作为年终的盘点,本文列出了一些2017年的关于Go编程的一些文章,并加上简短的介绍. 文章排名不分先后, 文章也不一定完全按照日期来排列.我按照文章的大致内容分了类,便于查找 ...

  4. 软件测试进阶(一)A/B测试终极指南

    A/B测试终极指南 A/B测试不是一个时髦名词.现在很多有经验的营销和设计工作者用它来获得访客行为信息,来提高转换率.然而,A/B测试与SEO不同的是,人们都不太知道如何进行网站分析和可用性分析.他们 ...

  5. 利用 URLProtocol 假冒一个服务器来测试网络

    制造一个假的服务器 class MockURLProtocol: URLProtocol { static var requestHandler: ((URLRequest) throws -> ...

  6. [转]软件测试 Top 120 Blog (博客)

    [转]软件测试 Top 120 Blog (博客) 2015-06-08 转自:    软件测试 Top 120 Blog (博客) # Site Author Memo DevelopSense M ...

  7. Cheatsheet: 2017 02.01 ~ 02.28

    Web Debouncing and Throttling Explained Through Examples What is TypeScript? An Absolute Beginner's ...

  8. laravel - ReflectionException in Container.php, Class not found?

    SIGN UPSIGN IN CATALOG SERIES PODCAST DISCUSSIONS ReflectionException in Container.php, Class not fo ...

  9. Exceptions and Errors on iOS

    异常:程序缺陷导致:不可恢复:给开发者使用: 错误:资源受限导致:可恢复:提示给用户. https://blog.jayway.com/2010/10/13/exceptions-and-errors ...

随机推荐

  1. FastCgi 与 PHP-FPM

    - 如果现在请求的是 /index.php,根据配置文件,nginx 知道这个不.是静态文件,需要去找 PHP 解析器来处理,那么他会把这个请求简单处理后交给 PHP 解析器.Nginx 会传哪些数据 ...

  2. 几个非常有用的js小函数

    function $(v){ if(typeof v==="function"){ window.onload=v; }else if(typeof v==="strin ...

  3. python-getattr

    getattr(object, name[, default]) Return the value of the named attribute of object.  name must be a ...

  4. Razor 中的@helper 与 @function 用法

    @helper : 可以有返回值,也可以没有返回值 @function :需要有返回值 可以将View中公共部分的代码抽取出来,变成一个独立的方法   公共部分 view        抽出的公共部分 ...

  5. js 数组遍历for..in弊端

    //for..in在数组中的弊端 原则上数组Array对象是不能操作的,但是有些程序员开始不注意把Array的原型链上添加了方法就会出现意想不到的bug //例如 ,,]; Array.prototy ...

  6. HTTP基本认证

    众所周知,Web使人们可以很方便的访问分布在世界各个角落里信息.但是仅仅是方便还是不够的,并不是所有的信息都适合在互联网上公开访问,我们需要保证只有特定的人才能看到我们的敏感信息并且执行特定的操作. ...

  7. [.NET领域驱动设计实战系列]专题十:DDD扩展内容:全面剖析CQRS模式实现

    一.引言 前面介绍的所有专题都是基于经典的领域驱动实现的,然而,领域驱动除了经典的实现外,还可以基于CQRS模式来进行实现.本专题将全面剖析如何基于CQRS模式(Command Query Respo ...

  8. 《BI深入浅出》笔记

    今年的项目涉及到BI的知识点,读了<商业智能深入浅出>,这本书是基于IBM的产品做的,基础知识部分讲的非常成体系.记下来做个备忘: 1. BI简介 1.1 实施方案 1)项目规划: 2)系 ...

  9. Java多线程9:ThreadLocal源码剖析

    ThreadLocal源码剖析 ThreadLocal其实比较简单,因为类里就三个public方法:set(T value).get().remove().先剖析源码清楚地知道ThreadLocal是 ...

  10. Linux 文件描述符和重定向

    200 ? "200px" : this.width)!important;} --> 介绍 文件描述符是与文件输入.输出相关联的整数,在编写脚本时会经常使用标准的文件描述符 ...