软件测试常见的20个误区,你真的了解吗?

常见的20个误区

今天分享软件测试中常遇到的 20 个误区,争取能给想从事软件测试的小伙伴一点启发。

1、测试人员不需要了解软件开发知识

抛开自动化测试,测试开发等,这些是必须要学习软件开发知识。功能测试和接口测试等还是需要软件开发知识的,例如新建了一条订单为什么界面上不展示,为什么发信出去的图片不展示等等。

如果想定位到这个问题产生的根本原因,软件的系统架构、接口的实现流程就必须要了解到位了。懂技术也不容易被开发牵着鼻子走,比如你提交了一个bug,开发同学随便一说就把你误导了,如果你懂其中实现的逻辑,那就不会了。

2、软件测试很简单

测试仅仅是入门容易,但是后期要了解和学习的内容可是很多,例如开发知识、各种工具、数据库、linux等等。

3、测试就是为了找到bug

测试人员不仅仅要找到bug,还要分析bug产生的原因,跟踪bug等等。找bug在功能测试中体现的更多,除了功能测试还要执行自动化测试、安全测试、性能测试等等。

4、手工测试没有挑战性

手工测试也是很有挑战性的,用到很多测试逻辑,比如一个简单的登录或是优惠券购买等等,厉害的同学能写出很多测试用例,测试到极致了。能做到自己测试过的功能,别人基本上找不到bug真是厉害。

5、自动化测试很难

难点不在于技术,在于测试思路,自动化之前已经打好测试基础,再有技术的加持,写自动化脚本不是很难的。

6、软件测试工作重复又枯燥

那是初级测试,高级测试不仅仅局限于功能测试,还会做一些安全测试、性能测试等等,会发现很多测试的乐趣并且还能提升自己的能力。

7、自动化测试将取代手工测试

自动化测试一般是用来回归测试,自动化测试并不能进行详细功能的覆盖,所以还是要进行手工测试。

8、不适合做开发,做测试吧

开发转测试是技术优势的,但是作为测试,要学习的内容不会比开发要少,例如代码、各种工具、数据库、linux等。

9、使用了测试工具,就是进行了有效的测试

工具是辅助,是为了提高测试效率,是否能够有效测试,取决于使用工具的技术水平。

10、规范化软件测试是增加项目成本

规范化测试软件测试,前期成本比较高,但是在后期的维护的成本就会大大降低。

11、期望短时间内,线上bug为 0

要实现线上bug为0是很难的,还要取决于业务的复杂程度,项目的大小,新员工的磨合等等。遇到一些特殊的项目,有些问题可能需要在特殊的用户场景下才会出现。

12、忽视需求阶段的参与

需求评审可以让测试同学提前了解到业务需求,提前考虑需要的测试资源,同时遇到疑问的地方也可以在需求评审时提出来

13、忽视用户操作

认为这个功能用户常用,不会出问题,你认为永远是你认为的,一定要做好回归工作还有一个很重要的点,重视线上用户反馈的问题,及时补充到用例中,有一些特殊的业务场景可能是用户实际操作中才会用到的。

14、开发完了进行测试

敏捷测试,提前介入测试。例如需求评审,界面功能开发完成前进行单元测试、接口测试等等,早发现早解决。

15、忽视软件测试建档

和软件测试相关的文档一定要做沉淀,例如测试用例、需求文档、测试报告等等,还有一个特殊的点--发现的问题一定要及时录入bug管理系统,后期项目复盘等都有记录可查。

16、线上有bug,都是测试的问题

不要慌,首先确认线上问题出现的原因,确定原因后紧急修复上线。除了漏测的情况,还有可能是其他原因造成的。出现问题,解决问题才是最重要的。

17、bug越多越好

测试的有效性不是根据项目的bug数来衡量的。

18、关注测试的执行而忽视了测试用例的设计

测试用例设计很重要,用例考虑的全面完整,做好准备,测试执行会很顺畅并且还能及时发现项目的问题。

19、软件测试没有前途

360行行行出状元,每一个行业做到极致或是更好,都能做出很不错的成绩,身边很多测试大佬都很优秀不亚于其他技术岗位了。多多提升自己的能力是关键,持续学习,不断进步。

20、测试是为了证明软件的正确性

测试不仅是要证明软件的正确性呢,更多是证明软件是错误的,不仅仅要考虑正确的流程还要考虑异常的流程。

分享一下自己的学习资料

在网上,经常看到很多新手想要学习软件测试,却不知道该怎么开始,软件测试到底需要掌握哪些技能?小编粗略的整理了一份学习大纲,基本涵盖了软件测试的全部核心技术点:测试理论,Linux 基础,MySQL 基础,Web 测试,接口测试,App 测试,管理工具,Selenium 相关,性能测试,计算机网络,组成原理,数据结构与算法,逻辑题,人力资源,技术脑图等等…质量非常高!!!应对技术面试绰绰有余!【点击文末小卡片免费领取】,希望对刚刚入行或者想要学习软件测试的朋友有一点帮助。

一、测试的理论基础

不管你以前有没有学过计算机,有没有计算机基础,学习测试的理论都是首要的,不管你是想要学习功能测试,性能测试,测试开发。

主要包括常见的软件开发流程及模型,特别是敏捷开发相关知识。

软件测试的定义、分类、测试的流程、测试用例编写方法以及bug的管理及生命周期。

了解web端和app的常见测试点和测试方法。

编写常见的测试文档,如软件测试报告,bug单,测试计划等等。

二、学习数据库

数据库是开发和测试最基本的技能,软件前后端的交互,本质就是数据的交互,不管是功能测试,性能测试,接口测试,自动化测试等等,都离不开数据库的支撑和使用,这一部分主要是了解数据库的基本概念,数据库SQL增删改查,常见的表操作语句,以及数据库工具(Navicat)的使用

三、学习Linux

作为一名软件测试工程师,我们经常要在服务器端查看日志,从而定位bug的源头,还有,在linux系统上搭建测试环境。Linux系统一直被用作重要的服务端操作系统,我们必须要掌握基本的Linux系统知识,熟悉常见的命令及工具,当然,更高级的使用,是通过编写shell脚本,自动化完成测试任务。

四、Python编程

统计python源代码文件中代码行数,去除注释,空行,进行输出?
python调用cmd并返回结果?
1,2,3,4 这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数

......

五、接口测试

接口测试本质上也是功能测试的一种,通过脚本和工具,模拟客户端对服务端接口进行调用。由于是从接口层测试,能更早的发现问题,提高测试的效率,降低修复的成本。现在招聘软件测试的基本要求之一是熟练的掌握接口测试。

六、自动化测试

学习自动化测试的基础是掌握一门编程语言,个人优先推荐Python(简单;易学;免费开源),其次Java,并且还要掌握一定的前端知识。

掌握相关的自动化测试工具selenium、appium等。

掌握常用的自动化测试框架,如果用python实现的话,则需要掌握requests库和unittest框架的使用。

 七、性能测试

性能测试的技术要求很高,不仅要对性能的指标,测试的分类,测试设计有深刻的理解,还要学习系统业务和架构相关知识,这样才能更好的设计性能场景,分析出系统的性能瓶颈。性能测试常用的工具:jmeter和loadrunner(大家可以根据需要进行学习)。

上面资料包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、Python基础、Selenium相关、性能测试、LordRunner相关等,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!

以上就是今天的分享,谢谢你的阅读呀~

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值