提起正向思维与逆向思维大家一定都不陌生,因为这是一个老生常谈的问题了。这样的思维方式一直贯穿着软件测试案例设计和执行的始末,现有的软件测试科学理论体系依赖测试的预想结果和实际结果来决定软件的正确性。下面分别跟大家分享一下正向思维和逆向思维测试。

正向思维

软件测试的正向思维就是试图验**是工作的,即软件的功能是按照预先设计的执行的,以正向思维,针对系统的所有功能,逐个验证其正确性。
在平常的测试中这样的测试案例我们无处不在,以银行系统为例:开发人员添加了某个收款人信息的栏位,从正向思维出发,我们测试中通常认为这些栏位是可用的,能正常显示收款人信息并且要素正确,在业务允许的范围内各种不同的数据格式验证无误……

当然,我们可以在正向思维的测试案例中融入不同的测试方法,用有效的数据,正确的流程,多样化的场景来演绎软件的执行;这些案例的执行都是建立在认知此软件满足需要基础上,通过案例的执行来证明软件是成功的,这是正向思维

逆向思维

软件测试逆向思维就是认为软件有错的情况下去测试这个软件。
有人说:“如果把正向测试比作是听从老师话的小学生,逆向测试思维就是处处跟老师作对、调皮捣蛋的小朋友”
简而言之:我就是要跟你对着干
从逻辑学角度出发,为互为逆否命题的两个命题是等价命题。可得出:
如果p?q为真,则¬q?¬p
我们从正向思维出发得出这样一个真命题:如果BUG被修复了,那么程序执行无误。
开篇提到软件测试通过预想结果和实际结果来决定其正确性,从而判定该程序否达到预期。
假设将此命题看作是软件执行的过程。"BUG被修复"作为预想结果,而"程序执行无误"作为实际结果,很显然,如果这个命题为真,就能从软件执行的过程中得到结论–软件符合预期。现在我们换个角度从逆向思维出发,得出它的逆否命题为:
“如果程序执行错误,那么BUG未被修复”
换句话说,要想证明BUG未被修复,就得证明程序执行错误。基于逆向思维,我们通常是通过设计并执行测试案例方式,来证明"程序执行错误"这一假设条件的存在性。那么如何基于逆向思维设计和执行测试案例?可从以下几点出发:

  • 不断思考开发人员理解的误区
  • 开发人员不良的习惯
  • 程序代码的边界
  • 无效数据的输入
  • 系统的弱点
  • 试图破坏系统、摧毁系统

不论是正向思维还是逆向思维,软件测试的目的都是为发现错误而执行程序的过程。借用一句经典的话"一个好的测试用例是在于它能发现至今未发现的错误"。祝愿大家在测试的路上不断提高自身职业修养,快速成长!

推荐好文:

10年软件测试工程师感悟——写给还在迷茫中的朋友

什么样的人适合从事软件测试工作?

见识了解python自动化测试(3)

Python 和Java 哪个更适合做自动化测试?

软件测试人员的每天工作日常

10分钟玩转Python+Selenium自动化测试,教你快速入门!

最后: 欢迎关注小编领取一份300页pdf文档的Python自动化测试工程师核心知识点总结!软件测试技术交流群:(313782132) 这些资料的内容都是面试时面试官必问的知识点,篇章包括了很多知识点,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

软件测试的自我修养:正向思维与逆向思维相关推荐

  1. 测试适合眉形的软件_软件测试的自我修养:正向思维与逆向思维

    提起正向思维与逆向思维大家一定都不陌生,因为这是一个老生常谈的问题了.这样的思维方式一直贯穿着软件测试案例设计和执行的始末,现有的软件测试科学理论体系依赖测试的预想结果和实际结果来决定软件的正确性.下 ...

  2. 软件测试的自我修养之学习自动化测试

    微信公众号软件测试的自我修养上有这么一篇关于自动化测试的文章,我摘录出其中自己感觉重要的部分与大家分享分享. 这句话说得不错,"软件测试的最高境界是:开发测试工具,设计自动化测试框架,让别人 ...

  3. 软件测试的正向思维,反向思维

    首先我们先来认识一下软件测试比较专业的两个术语: 确认:证实产品需求说明书的功能已经实现. 验证:看已经存在的功能满足不满足需求. 在测试工作当中,我们时刻与这两个词语为伴,确认和验证好每一个软件,是 ...

  4. 宏观经济学第四章思维导图_宏观经济学思维导图_宏观分析师的自我修养手册:资深从业者万字方法论总结...

    宏观分析师的自我修养手册:资深从业者万字方法论总结 在我印象中,宏观经济学家大概分为两种,一种是三好学生经济学家,典型的英美牛... 你应该可以画出下面这张思维导图,并且如果在其中一个变量里给一个冲击 ...

  5. 免费下载!《阿里工程师的自我修养》公开10位阿里大牛解决问题的思维方式

    简介: 今天,阿里技术公布一波阿里P8.P9技术大牛的思维模型,将他们的思维模式呈现出来.你可以在阿里资深专家职业生涯的真切感悟中,找到应对危机的最佳方法.<阿里工程师的自我修养>现已正式 ...

  6. 程序员的自我修养,好文

    很认真的聊一聊程序员的自我修养 本文正在筹备第二版,以下是第一版主要内容 首先要谈的是,今天的话题所聊的程序员包含哪些人? 在中国,写程序,不仅仅是一种兴趣,更多的时候,还是一种普通职业和谋生工具 大 ...

  7. 一个运维老将的自我修养

    作者:huashionxu,腾讯 TEG 业务运维专家 运维同学作为站在研发团队背后的男人们,一直在担任着举重若轻的角色,而这两年盛行的 Devops.研效变革也直接影响到运维同学岗位职责的变化, 腾 ...

  8. 很认真地聊一聊程序员的自我修养

    最近看了<浅谈程序员的英语学习>,对于文章中的观点我非常认同,英语是非常重要的,但文章站的高度还是太高,具体表述的学习方法我不是很认同,也认为不太实际,恰好之前有一篇一直没有发表的文章想重 ...

  9. 韭菜的自我修养-认知篇

    职场&认知洞察 丨 作者 / findyi 这是findyi公众号的第78篇原创文章 这个社会充满了镰刀和韭菜的故事. 大佬们有资金.资源.人脉.信息差. 他们通过各种眼花缭乱的操作轻轻松松占 ...

最新文章

  1. tomcat war java_java – 启动Tomcat WAR
  2. 隐藏头视图即隐藏UINavigationBar
  3. 并发学习笔记 (5)
  4. 泊位调度问题 matlab,流水线车间调度问题matlab源程序.doc
  5. 绝对不能错过!2009~2019 高中数学联赛11年真题解析
  6. react usecontext_Vue3原理实战运用,我用40行代码把他装进了React做状态管理
  7. 代码传奇丨美女黑客张婉桥的“爱丽丝奇遇记”
  8. 2021数字化就业新职业新岗位研究报告
  9. 华为PLC-IoT生态联盟成立,携手合作伙伴共赢智慧物联新时代
  10. 看我如何利用教科书级别的释放后使用漏洞(CVE-2020-6449)
  11. 《Cascade R-CNN: Delving into High Quality Object Detection》论文解析
  12. Cesium屏幕坐标转世界坐标
  13. PKUWC2019 总结
  14. 22个常用Python包,相信你一定用的到!
  15. eact+redux仿微信聊天室和vue+web端聊天室
  16. 训练好的vgg报错RuntimeError:mat1 and mat2 shapes cannot be multiplied(512*49 and 25088*4096)
  17. 公有继承中 构造函数和析构函数的调用(包含内嵌子对象)
  18. 主板点不亮 复位BIOS_【硬件篇】主板排线怎么插?确认过眼神,就是这么简单!...
  19. SPSS Modeler 建模前准备—数据平衡与特征选择(指南 第十一章)
  20. RestTemplate使用实战-exchange方法讲解-HTTP请求

热门文章

  1. AD8361检波器 功率检波器 均值检波 功率计 原理图和PCB
  2. Tomcat免安装下载与测试
  3. js混淆加密,通过混淆Js代码让别人(很难)无法还原
  4. 三菱5u 上位机mc协议_上位机读写三菱plc fx5u的内存数据示例
  5. 谷歌浏览器打不开网址解决办法
  6. java word 2003_[Java教程]POI 读取word (word 2003 和 word 2007)(转)
  7. (数组)88. 合并两个有序数组(java)
  8. 【七】Python全栈之路--字符串_列表相关操作
  9. python火车票购买程序代码_100行Python代码实现自动抢火车票(附源码)
  10. C# 使用SDL2进行视频播放窗口截图和字幕添加