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. 安装 webpack

    安装 webpack看好webpack 对自动压缩和文件名自动md5更名,可解决客户端缓存问题.我的安装环境为 centos linux,root用户 1.安装Node及NPM.到NodeJS官网安装 ...

  2. zabbix3.x搭建(1)

    服务器端安装配置: 1).安装: yum -y install gcc gcc-c++ autoconf httpd php mysql mysql-server php-mysql httpd-ma ...

  3. python 之初体验

    python 关开python的介绍我这里就不解释了,这里贴出一个官方的介绍,供大家阅读 http://baike.baidu.com/link?url=U6LdVR-5RCI2TNsXzeALCcG ...

  4. ORACLE10g数据库字符集设置和客户端字符集设置不一致问题

    在家里自己电脑上又重新安装了Oracle 10g和PLSQL Developer,装完后启动PLSQL Developer,弹出如下错误信息: 解决方案: 在Windows运行命令行中输入regedi ...

  5. asp.net core webapi之跨域(Cors)访问

    这里说的跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被当作 ...

  6. ReentrantLock实现原理深入探究

    前言 这篇文章被归到Java基础分类中,其实真的一点都不基础.网上写ReentrantLock的使用.ReentrantLock和synchronized的区别的文章很多,研究ReentrantLoc ...

  7. 译文---C#堆VS栈(Part Three)

    前言 在本系列的第一篇文章<C#堆栈对比(Part Two)>中,介绍了值类型和引用类型在参数传递时的不同,本文将讨论如何应用ICloneable接口实现去修复引在堆上的用变量所带来的问题 ...

  8. Windows 安装 MongoDB 服务

    第一步 以管理员权限打开命令提示符 按Windows+R键(Ctrl和Alt中间的那个,有微软Logo的键),输入cmd打开命令提示符 第二步 创建数据库目录. 使用mkdir命令,创建数据库的目录和 ...

  9. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures 本篇分享一下第6个已完工的视频,即<beginner Graphics ...

  10. 细说.NET中的多线程 (三 使用Task)

    上一节我们介绍了线程池相关的概念以及用法.我们可以发现ThreadPool. QueueUserWorkItem是一种起了线程之后就不管了的做法.但是实际应用过程,我们往往会有更多的需求,比如如果更简 ...