文章末尾给大家留下了大量的福利

前言

今天,笔者想和大家来唠唠软件测试,因为有些小伙伴一直在问我学习软件测试有没有比较好的方法或者建议,笔者就给大家来好好唠唠。

怎么才算把软件测试做好,不做弯路呢,接下来我从几个方面谈一下理解:

  • 软件测试的目的
  • 软件测试做哪些事情
  • 哪条路是捷径

软件测试是通过验证产品实现过程好的行为和不好的行为,目的是达到一个更高的产品交付标准。可以通过检查研发代码的方式验证,也可以通过检查产品的特性验证。

初级的软件测试通常把测试目标放在找出更多不好的行为,找出更多的 bug,通常不需要对软件业务有很清晰的认识,只需要根据一些固定的套路去找问题就可以。

中级的软件测试除了能找出很多 bug 外,还能关注整个产品设计和研发中好的部分,为什么有些部分很少出问题,为什么另一些部分却经常出问题。 中级的软件测试不仅有很成熟的方法论,而且对软件研发、系统架构有一定的认识,对某些领域比较熟悉。

高级软件测试不仅能做到前面的,而且能推动软件能有更好的交付质量,不仅要熟悉测试整个流程,而且还知道研发流程,并且结合这些来制定更好的交付标准和流水线。 到了这个阶段,不需要太纠结哪些工作由测试负责,哪些由 QA 负责,实际上,从一开始就不用纠结。

怎么做软件测试,哪些测试工作比较重要?

平时的测试工作主要分为 3 类:

  • 功能性测试
  • 非功能测试
  • 回归测试

功能测试主要验证产品能不能用,也是所有软件测试工作中的重心。如果一款产品交付到用户手中有质量问题,不仅容易损失客户,而且会让品牌的形象受到严重挑战。

非功能测试主要验证产品好不好用。它是一个持续优化的过程,不可能在一开始就做得很好,所以一款新产品刚上市,在资源有限的情况,往往对非功能测试不会特别看重,根据用户的反馈再去调整。

而一款老产品,随着用户越来越多,竞争对手的加入,会越来越关注品牌形象,从而越来越注重非功能测试。

当一个测试工程是在选择岗位的时候,一般情况下,越注重非功能测试的公司,对自己的品牌形象越看重,业务发展的相对较好,可以大致判定为好公司。 而一个公司如果有一定的体量,仍然不注重非功能测试,则可能不太注重用户体验,或者公司发展较差,没办法投入这么多资源。

回归测试其实不是单独的测试种类,不过我把它放进来了。前面的功能测试和非功能测试是在同一时间点时要关注的测试种类,是静态的。 而回归测试是从时间方面来关注的测试种类,是动态的。

它关注的是随着产品不停的研发,会不会出现新的质量问题。比如说公司每个月发布一次新版本,因为每次都有新的软件改动,所以很有可能引入新的问题,我们就需要关注开发修改完代码后,是不是引入了新问题,是不是解决了之前的老问题。

现代化企业产品发布的频率越来越快,因此回归测试也越来越重要。

接下来,讨论一下手工测试和自动化测试的问题。

手工测试是通过手来完成测试工作,自动化测试通过工具、代码、机器等来完成测试工作。 实际上,手工测试在一定程度上都需要借助自动化工具。所以他们并没有明显的界限。 可以简单理解为自动化测试是执行过程中不需要人工值守和干预的。

这两个只是实现测试目标的方式不一样,并没有谁高谁低,谁强谁弱的问题。就好像我想和朋友打电话,我可以使用苹果手机,也可以使用安卓手机。 我想寄快递,可以选择顺丰快递或者德邦快递。

虽然他们都能达到目的,但是还是有人更喜欢自动化测试,因为它格调高,说出去特别有面子。 我记得我以前不怎么喜欢玩手机,但是有那么一次买了个苹果手机,玩手机的频率就明显变快了。

手工测试和自动化测试各有各的特点,自动化方式更适合可以重复执行的测试场景,手工测试更适合灵活、单次的测试场景。

一款新产品或者新功能,你还不知道它的未来,可能明天就下线了,明显就适合手工测试。 而回归测试就是要多次运行,因此更适合自动化测试。 随着产品的更新和迭代,有的手工测试会逐步转成自动化测试的方式。

不管是手工测试还是自动化测试的方式,几乎都要编写脚本。脚本是执行测试的文本依据,自动化测试的脚本往往是代码或者工具中创建的交互过程。 手工测试的脚本是编写的用例文本内容,可以按照里面的说明执行用例。

除了脚本方式,手工测试的探索式测试和自动化当中的智能化测试需要单独说明。

探索式测试是手工测试人员按照以外的经验和方法论快速验证产品特性的方式,更适合中高级测试人员,执行完后可能也是需要补上脚本的。

智能化测试是通过人工智能方式自动识别和生成用例,然后再通过代码执行的过程。用例的编写几乎都不需要人工参与,是新时代下快速发展的一种测试方式。

端对端 vs UI 测试

功能性测试可根据测试金字塔分为3种:

  • 单元测试
  • 集成测试
  • 端对端测试

通常进行的接口测试属于集成测试, 从页面点击到反馈的过程是端对端测试(客户端-服务端-客户端)。

UI 测试我会把它放在非功能测试,因为它测试的其实是好不好用的问题。

像平时说的性能测试、ui测试、兼容性测试、稳定性测试基本都是属于非功能测试的问题。

有没有捷径?

这几块内容可谓捷径:

  • 完整系统的测试方法和理论
  • 探索式测试方法
  • 领域知识,把业务用领域语言描述和分析的能力
  • 研发流程和软件架构,比如目前常用的微服务架构、云原生
  • 在这里面代码能力不是必须,不过基本还是会去掌握,因为他确实能解决很多手工无法解决的问题。~~~~

总结

今天的文章就到这里,希望可以帮助到大家,喜欢的小伙伴可以点赞收藏评论加关注哟。

下面是我给大家留下的一些福利,有需要的小伙伴可以私信关键字“资料”获取哟。

项目实战

app项目,银行项目,医药项目,电商,金融

​大型电商项目

全套软件测试自动化测试教学视频

​300G教程资料下载【视频教程+PPT+项目源码】

​全套软件测试自动化测试大厂面经

​python自动化测试++全套模板+性能测试

软件测试有捷径嘛?怎么样可以快速学习软件测试相关推荐

  1. 怎样快速学习软件测试?软件测试学习方法

    很多人在了解到目前国内软件测试行业的高薪以及市场前景之后,都纷纷加入到软件测试的行列中.那对于新入行的新手来说怎样快速学习软件测试呢?学习软件测试有哪些比较有效的学习方法呢? 相对互联网其他岗位而言, ...

  2. 学习软件测试基础入门,零基础该如何学习软件测试?

    原标题:零基础该如何学习软件测试? 很多人提问"我是零基础该如何学习软件测试".关于这个问题千锋首先应该给零基础定一个范围,到底什么样才是零基础,从来没有接触过计算机的?我是学英语 ...

  3. 零基础萌新如何转行软件测试?如何快速学习软件测试?

    今天我在逛贴吧知乎的时候发现,绝大多数人都有这样一些疑问(上图)所以起身给大家写了这一篇文章希望能给朋友们带来些帮助. 2020年软件测试行业有何波动? 作为互联网测试工作的资深从业者,我注意到一个现 ...

  4. 软件测试自学插画临摹,【答疑】学软件测试需要什么基础?如何快速自学软件测试? - 视频教程线上学...

    首先,要有宽泛的计算机基础知识.微机原理,数据结构,数据库,操作系统原理,编译原理,逻辑,编程语言,网络,等等,都要系统地学习过.都精通不大可能,因为人的兴趣都不相同,但是,这些功课的基本知识点是应当 ...

  5. 27岁活的像个废物一样,没技术没学历,现在学习软件测试还来得及吗?

    为什么会学习软件测试? 27岁了,算一下8年了,工作了一年,就没去工作就一-直在家,家里固定每个月给2000,偶尔一个月有四千,但依旧没钱,家里给了一套房子,出门200米就是地铁站,三室- -厅住7楼 ...

  6. 28岁还是一事无成,现在想学习软件测试还来得及吗?

    为什么会学习软件测试? 28岁了,算一下8年了,工作了一年,就没去工作就一-直在家,家里固定每个月给2000,偶尔一个月有四千,但依旧没钱,家里给了一套房子,出门200米就是地铁站,三室- -厅住7楼 ...

  7. 软件测试大专_【编测编学】领跑计划二期,快速铸造软件测试工程师

    点击上方蓝字关注我们! 领跑背景 越来越多的人想要进军IT行业,但是又碍于行业岗位较多,技术要求比较高,所以很多人都想要从事软件测试行业,但是苦于无门,找到我们小编老师,咨询如何快速学习软件测试?为了 ...

  8. 12家大厂软件测试大牛,联合打造:<如何从零开始学习软件测试>系列视频+完整版文档分享

    前言 很多朋友想要入行软件测试,但是都不知道该怎么学.抽个时间简单地给大家说下,对于0基础的朋友,应该怎么去学习软件测试.学习软件测试有2条路可以选. 最省事的当然是找个靠谱的培训机构去培训啦,你就什 ...

  9. 小白如何快速入门软件测试

    先说点我的测试经历,让大家都软件测试有些认识. 毕业后,拿着简历想都没想一头就扎到了苏州,作为一个北方女汉子,一直被"青石板小路回眸一笑的女子"的曼妙所感动,全无他因,事后说起,一 ...

最新文章

  1. tinyxml 读取文本节点_【C++】【TinyXml】xml文件的读写功能使用——写xml文件
  2. JavaScript夯实基础系列(四):原型
  3. 一个可以直接使用的可用iptables配置的stateless NAT实现
  4. linux网络批量安装上限,linux基于网络的批量安装
  5. Touchpad Synaptics 触摸板(中文) [zt]
  6. jsp 连接mysql空指针_java jdbc与mysql为什么连接不上并且抛出空指针异常?
  7. NOIP2011 聪明的质监员
  8. (转)Java中的守护线程
  9. os、os.path、shutil操作文件和文件路径的常用方法总结
  10. PTA21、K好数 (10 分)
  11. debian安装什么mysql_安装多个mysql实例(debian版本)
  12. word打印设置相关
  13. python 成语接龙1-爬去四字成语
  14. 【资源分享(免积分)】增长黑客_创业公司的用户与收入增长秘籍 - 范冰(高清版免费).pdf
  15. 秋招总结|阿里转正失败,到拿到10个大厂产品offer
  16. 数据采集:如何自动化采集数据
  17. DM数据库:springboot+mybaits
  18. mysql无法在kvm虚拟机上_使用KVM虚拟机遇到的问题(持续更新)
  19. 所见即所得的php编辑,常用所见即所得HTML在线编辑器汇总(15个)
  20. 拿不到 Offer 免费学,廖雪峰的“大数据分析全栈工程师”课程第11期即将封班!...

热门文章

  1. 贪吃蛇大作战代码java,贪吃蛇游戏,贪吃蛇java游戏代码讲解
  2. m3db install
  3. Quaternion kinematics for the error-state Kalman filter 文章理解
  4. S4/HANA ME21N创建PO 输出控制消息按钮丢失解决方法(切换EDI 输出模式BRF+至NAST模式)
  5. 如何去除van-cell组件中的外边框
  6. dd命令做u盘启动方法
  7. java操作sentinel_sentinel (史上最全+入门教程)
  8. 早教机构遍地开花,何故只是昙花一现?
  9. HDU——hdu2389 Rain on your Parade
  10. Android系统制作自定义签名