[入门]测试原则-ApiHug准备-测试篇-002

  🤗 ApiHug × {Postman|Swagger|Api...} = 快↑ 准√ 省↓

  1. GitHub - apihug/apihug.com: All abou the Apihug   
  2. apihug.com: 有爱,有温度,有质量,有信任
  3. ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace

写在前面

在进行下一章节前可以问问自己这几个问题:

  1. 什么是软件测试?
  2. 开发人员和软件测试是否有关?还是只有QA组同学彩盒测试有关?
  3. 写过测试?
  4. 传统行业如何进行质量保证?
  5. 测试重要否?
  6. 测试是否耽误事?

测试7大原则

  1. Testing shows the presence of defects
  2. Exhaustive Testing is not possible
  3. Early Testing
  4. Defect Clustering
  5. Pesticide Paradox
  6. Testing is context-dependent
  7. Absence of errors fallacy

#测试显示bug的存在

测试应用程序只能显示在应用程序中存在一个或多个缺陷,但是,仅仅通过测试并不能证明应用程序没有错误。因此,设计测试用例使其尽可能多的找到缺陷是很重要的。

#穷举测试不可能

除非受测试应用(UAT)具有非常简单的逻辑结构和有限的输入,进行所有测试数据和场景的组合是不可能的事。出于这个原因,风险评估和优先级被用于集中测试最重要的方面。

#尽早测试

我们越早开始测试活动,就越可以更好的利用可用的时间。当最初的产品,例如要求或设计文件完成后,我们就可以开始测试。测试阶段常会在开发周期的最后部分也就是开发完成之后遭到时间压缩。因此,尽早开始测试,我们可以针对开发生命周期的每个阶段进行测试的准备。

另一个关于尽早测试的重要的一点是,当缺陷在生命周期中更早的被发现时,它们更容易解决而且成本更低。改变不正确的要求比起必须改变一个大型系统中没有按照要求或设计来工作的功能要成本低得多!

#缺陷群

在测试过程中,可以观察到,大多数报告的缺陷都与少数几个系统内的模块有关。即少量模块包含了系统中大部分的缺陷。这也是帕雷托法则(二八定律)在软件测试方面的实际应用:约80%的问题被发现在20%的模块中。

#杀虫剂悖论

如果持续运行同一套测试一遍又一遍,有可能那些测试用例就无法发现新的缺陷。因为随着系统的发展,许多以前报道的缺陷将会被修好,旧的测试用例就不再适用了。每当修复完缺陷或添加了新的功能后,我们需要做回归测试,以确保新更改的软件不破坏该软件的任何其他部分。然而,这些回归测试用例也需要根据软件本身的变化作出改变,使其能够更加适用并找到新的缺陷。

#测试是上下文相关的

不同的测试方法,测试技术和测试类型是根据应用程序的类型和性质来决定的。例如,运用于医疗设备上的软件应用程序相比游戏软件需要进行更多的测试。更重要的是医疗设备软件需要基于风险测试,需要符合医疗行业监管以及可能的特殊测试设计技术。出于同样的原因,一个非常受欢迎的网站,需要经过严格的性能试验,以及功能性的测试,以确保性能不受服务器上的负载的影响。

#无错谬误

只是因为测试没有发现软件中的任何缺陷,并不意味着该软件是随时可以发布的。被执行的测试,是否真的找到了大多数缺陷?或者,他们是否根据顾客需求设计检查软件是否满足要求?在发布软件之前,还需要考虑

#其他因素

其他原则需要注意的是:

  1. 测试必须由独立的一方来完成。
  2. 测试不应由该开发软件的人或者团队来执行,因为它们趋向于维护程序的正确性。
  3. 最佳人员配置: 于测试需要高度的创造性和责任感,需要将人员正确地分配到各个设计,实施和分析测试案例, 测试数据和测试结果的岗位上去。
  4. 除了有效条件之外,也要对无效的和意想不到的输入条件进行测试。
  5. 程序应该在无效情况下产生正确的消息并在有效情况下产生正确的结果。
  6. 保持测试过程中软件的静态。
  7. 在对程序进行测试用例集的执行过程不能对程序进行修改。
  8. 尽可能提供预期的测试结果。
  9. 测试文档的必要组成部分包括了预期结果的说明,即使提供这样的结果可能是不切实际的。

我们

api-hug-contact

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/820120.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

低敏猫粮怎么选?看这一篇就够了!

亲爱的朋友们,你们是否曾经为了家中敏感肠胃的小猫咪而犯愁,不知道如何选择适合的猫粮呢?今天,就让我们一起聊聊低敏猫粮与普通猫粮的那些不同之处吧!🐱 1️⃣ **成分差异**:首先,从…

Go 自定义14位时间类型 yyyyMMddHHmmss

目录 功能 代码 功能 数据库或者接口时间类型,经常会使用14位的时间格式。每次都转换有点麻烦。可以自定义一个时间类型。 自定义类型需要实现json接口中的MarshalJSON与UnmarshalJSON两个函数,这样在做json编码解码时就会自动转为14位的时间格式了。…

第四届大数据工程与教育国际会议(BDEE 2024)即将召开!

第四届大数据工程与教育国际会议(BDEE 2024)将于2024年8月9-11日在泰国清迈举行。数据驱动教育变革,智慧点亮未来课堂!BDEE 2024是专注于大数据工程与教育领域的重要学术会议,全球大数据与教育精英齐聚,在数…

使用 Docker 部署 SurveyKing 调查问卷系统

1)SurveyKing 介绍 SurveyKing 是一款功能强大、操作简便的开源问卷系统。它不仅满足了用户对问卷调查的基本需求,还提供了丰富的逻辑设置和灵活的问题设置,使得问卷制作更加智能化和个性化。此外,SurveyKing 还具有快速部署和安全…

构建鸿蒙ACE静态库

搭建开发环境 根据说明文档下载鸿蒙全部代码,一般采取第四种方式获取最新代码(请保证代码为最新) 源码获取Windows下载编译环境 MinGW GCC 7.3.0版本 请添加环境变量IDE 可以使用两种 CLion和Qt,CLion不带有环境需要安装MinGW才可以开发,Qt自带MinGW环境&#xff0…

认识一下RAG

1.RAG技术背景与挑战 2.RAG的核心概念 3.RAG的工作流程与架构 4.RAG的优化方法 RAG的提出 •Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks是一篇重要的论文(2020年5月) •REALM: Retrieval-Augmented Language Model Pre-Training (2020)就将BERT预训练模…

家居网购项目(三)

文章目录 1.后台管理—添加家居1.需求分析2.程序框架图3.修改FurnDao添加方法add 4.修改FurnDaoImpl添加方法add 5.单元测试FurnDaoTest.java 6.修改FurnService添加方法add 7.修改FurnServiceImpl添加方法add 8.单元测试FurnServiceTest.java 9.修改furn_add.jsp10.修改FurnSe…

【面试经典 150 | 数学】阶乘后的零

文章目录 写在前面Tag题目来源题目解读解题思路方法一:数学优化计算 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结…

人工智能——机器学习概述

1. 人工智能 1.1. 概念 人工智能(Artificial Intelligence,AI),是新一轮科技革命和产业变革的重要驱动力量, [26]是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 人工智能是智能学科重要的组…

【Ansible自动化运维】Ansible入门基础信息【安装配置、常用命令与模块】

介绍安装配置注意事项yum安装验证安装配置host配置主机清单配置主控端被控端 常用模块命令组成command模块shell模块copy模块script模块 日志信息最后 介绍 Ansible 是一个开源 IT 自动化引擎,可自动执行供应、配置管理、应用程序部署、编排和许多其他 IT 流程。它可…

YesPMP平台 | 活动有礼,现金奖励点击领取!

YesPMP众包平台在线发福利啦,活动火热开启,现金奖励等你来领,最高可领千元,赶快参与将奖励收入囊中,一起来了解活动细节吧! 一、活动内容: 活动一:【项目征集令】活动,…

前端大文件上传 -- 上传文件到S3或本地服务器

特别提醒 大文件上传的文件切片逻辑, 包括如何将分片文件上传到本地服务器, 请查看之前的文章: 前端大文件上传 - 总结(Vue3 hook Web Worker实现,通过多个Worker线程大大提高Hash计算的速度), 本篇仅实现如何将大文件分块上传到S3. 后面写…

关于Wordpress的操作问题1:如何点击菜单跳转新窗口

1.如果打开,外观-菜单-菜单结构内,没有打开新窗口属性,如图: 2.在页面的最上部,点开【显示选项】,没有这一步,不会出现新跳转窗口属性 3.回到菜单结构部分,就出现了

2024年工程师职称水平能力测试考试难吗?

大家现在都知道,现在湖北中级和高级职称评审,都必须要先报名一个水平能力测试考试,水测考过了之后才能参加评审,那么很多人都不知道水测到底难不难?能不能考过?水测主要是考什么呢? 职称水平能力…

Rust 语言 GUI 用户界面框架汇总(持续更新)

拜登:“一切非 Rust 项目均为非法”😎 什么是 GUI 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。 现在的应用开发,是既要功…

【python】flask操作数据库工具SQLAlchemy,详细用法和应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

【Linux系统编程】第三弹---基本指令(一)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、touch指令 2、mkdir指令 3、ls 指令 4、pwd命令 3、cd 指令 6、rmdir指令 && rm 指令 7、man指令 7、cp指令 …

在 PyCharm 中使用系统安装的 Python 和 Anaconda 的 Python什么区别

virtualenv environment : virtualenv 是一个用于创建独立 Python 环境的工具。它可以在同一个系统上创建多个相互独立的 Python 环境,每个环境都有自己的 Python 解释器和包库,从而可以实现不同项目之间的依赖隔离和版本控制。coda environm…

[已解决]问题:root.users.hdfs is not a leaf queue

问题:root.users.hdfs is not a leaf queue CDH集群报错: Exception in thread “main” org.apache.hadoop.yarn.exceptions.YarnException: Failed to submit application_1713149630679_0005 to YARN : root.users.hdfs is not a leaf queue 思路 …

海外媒体如何发布软文通稿

大舍传媒-带您了解海外发布新潮流 随着全球化的不断深入,越来越多的中国企业开始关注海外市场。为了在国际舞台上树立品牌形象,企业纷纷寻求与海外媒体合作,通过发布软文通稿的方式,传递正面信息,提升品牌知名度。作为…