编写有效用例电子版_软件测试人员必须编写代码吗?

f363a9b6b377c69d39e79f3f096e8feb.png

相信每一个刚入门软件测试的小伙伴都会琢磨一个问题:软件测试人员,要不要写代码?

其实这个问题同样困扰着已经在测试行业闯荡了几年的测试小司机们。

那今天,我就来给大家分析一下~

01

各种软件测试角色

一般而言软件测试大体可以分为两类角色:

1. 业务型测试
通常在系统开发完成或大体完成的情况下参与验证测试系统的功能及其完整性。该角色属于非技术类,一般情况下不需要写代码。

2. 技术型测试
技术型测试所关注的层面不同于业务型测试,要求掌握或是具备数据库、编程能力、系统架构、数据设计和应用接口等技术能力。


通常情况下技术型测试人员在开发阶段便介入测试工作,从代码层面开始进行测试,因此技术型的测试会面临更多的挑战。


技术型测试工作通常涉及两方面的工作,既要做开发,又要做测试。像我们平时所知道的自动化测试、性能测试、安全测试通常被归为该类。

890e97c31a908a071ee771e59f15d27c.png

02

优秀测试人员的属性

软件测试的方法会因软件产品的需求、行业的不同而所有不同,而优秀的测试工程师在整个产品的测试过程中扮演着极其重要的角色。

一个优秀的测试工程师应该具备:

丰富的行业知识

优秀的逻辑推理能力

良好的编程技能

软件测试工程师为什么必须掌握编程能力?

做自动化测试时,你需要写代码

做白盒测试时,你需要读懂代码和写代码

做数据库操作时,你需要会sql的增删改查操作

在敏捷测试过程中, 你需要会写自动化测试

做性能测试,你需要写代码

做安全测试时,你需要写代码

做数据测试时,你需要写代码

a924dcb28af3929a522c9fac7ab9739b.png

03

测试员的工作过程

1. 版本或者产品的规划阶段
作为一个测试人员,这个时候可以从一个更高的角度对产品的规划提出自己的想法,来更好的帮助产品取得成功。


需要具备的能力或者知识:对于产品的商业理解以及整个行业和市场的理解都比较深入,实际上这个时候我们可以将自己看成是一个产品经理。

2. 版本的需求阶段

测试人员已经能够开始做需求阶段的缺陷预防,保证需求是能够满足用户的原始需求,并且整个需求都是非常清晰和合理的,版本后期没有需求不合理或者需求不清晰的问题。


需要具备的能力或者知识:对于客户的使用场景非常清楚,能够在客户角度上面思考问题;有自己的一套需求分析的方法,最好是模型或者checklist之类的;非常好的分析能力,能够通过需求文档分析到可能潜在的问题。

d0dcc15f670551858fcceaae00f34fa3.png

3. 设计阶段

测试人员开始做设计阶段的缺陷预防,能够对于研发的整个设计方案非常清楚,能够根据研发设计文档里面的业务逻辑图自己能够站在测试的角度来画出一份让测试人员更加容易理解的业务逻辑图,并且能够发现研发在设计方案上存在的一些问题,并且指导研发进行修改。


需要具备的能力或者知识:比较深入的业务背景知识;熟悉开发使用的语言;业务分析和转换的能力。

4. 编码阶段

测试人员开始编写单元测试、接口测试用例、测试工具或者自动化测试用例,并且开始思考后面如何去更好的测试,并且帮助研发提前做好编码阶段的缺陷预防,甚至做得测试驱动开发。


需要具备的能力或者技能:熟悉开发使用的编码语言、能够对开发的代码进行静态走读、熟悉开发使用的编码语言的单元或者接口测试方法和框架、具备测试工具开发的能力、具备自动化的能力,良好的代码分析能力和用例设计能力。

c5d6b356cc189836cd7fb2559049178f.png

5. 测试阶段

测试人员开始制定测试策略和测试计划、执行测试用例、发现和定位bug、跟踪和回归bug,质量分析,有效的探索性测试等等,目的是花更短的时间来更好的保证质量。


具备的能力或者技能:制定策略和计划的能力、执行能力、分析和排查问题的能力,业务的理解能力,对代码的熟悉程度,模块的质量分析能力等等!

看到这里,如果你有一颗想要顺利进阶,升职加薪的心,不妨关注我们的公众号,学习更多软件测试技能!

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

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

相关文章

bert 中文 代码 谷歌_ELECTRA中文预训练模型开源,110个参数,性能媲美BERT

感谢参考原文-http://bjbsair.com/2020-03-27/tech-info/7050/ 在去年11月份,NLP大神Manning联合谷歌做的ELECTRA一经发布,迅速火爆整个NLP圈,其中ELECTRA-small模型参数量仅为 BERT-base模型的1/10,性能却依然能与BERT、RoBERTa等…

监督学习和无监督学习_机器学习的要素是什么? 有监督学习和无监督学习两大类...

如前所述,机器学习是AI的一个子集,通常分为两大类:有监督学习和无监督学习。监督学习教学AI系统的常用技术是通过使用大量带标签的示例来训练它们。这些机器学习系统被馈入大量数据,这些数据已被注释以突出显示感兴趣的功能。这些…

如何用python计算levenshteindistance_Levenshtein计算相似度距离

使用Levenshtein计算相似度距离,装下模块,调用下函数就好。拿idf还得自己去算权重,而且不一定准确度高,一般做idf还得做词性归一化,把动词形容词什么全部转成名词,很麻烦。Levenshtein.distance(str1,str2)…

欧姆龙变频器MX2参数_第442期丨【源程序】基于三菱西门子欧姆龙松下PLC实现喷水池控制系统;欧姆龙PLC编程软件更新步骤...

论坛周刊1 Dec 2019本期论坛周刊精彩内容:1、【源程序】基于三菱\西门子\欧姆龙\松下PLC实现喷水池控制系统2、欧姆龙PLC编程软件更新步骤3、RSLinx Classic EntherNet/IP配置4、这个运动控制算厉害么5、施耐德、ABB、西门子接连登门拜访往期精选▼第441期丨施耐德电…

linux两台服务器 同一个地址_【网工玩Linux】搭建开源多运营商(ISP)链路负载均衡器...

今天,主要想讲一下如何利用Linux内核功能,搭建与市面上十几万的商用产品(F5、RADWARE等)功能相同的多互联网线路负载均衡设备。负载均衡,相信各位是了解的。主要包括两大类,一类是应用负载均衡,…

python拦截修改数据包_会Python?那么你一定要试一试mitmproxy

mitmproxy 是一款工具,也可以说是 python 的一个包,使用这个工具可以在命令行上进行抓包(现在也可以在web页面上查看上抓的数据包了),还可以对所抓到的包进行脚本处理,非常有用。和 fiddler 或charles 等接口抓包工具相比&#xf…

java sha1_java使用SHA1加密算法详解

java使用SHA1加密算法程序源码://下面四个import放在类名前面 包名后面import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.util.Arrays;public static String getSha1(S…

小程序 wxml selectable_微信小程序 抽象节点

抽象节点这个特性自小程序基础库版本 1.9.6 开始支持。在组件中使用抽象节点有时,自定义组件模板中的一些节点,其对应的自定义组件不是由自定义组件本身确定的,而是自定义组件的调用者确定的。这时可以把这个节点声明为“抽象节点”。例如&am…

queue double java_一文弄懂java中的Queue家族

java中Queue家族简介简介java中Collection集合有三大家族List,Set和Queue。当然Map也算是一种集合类,但Map并不继承Collection接口。List,Set在我们的工作中会经常使用,通常用来存储结果数据,而Queue由于它的特殊性&am…

semantic ui中文文档_Vuetify-广受欢迎的Material风格的开源UI框架

全世界范围内广受欢迎的 Vue UI 框架,一个非常精致的 Material Design UI 套件。 Material Design 风格 UI 框架Vuetify 是一个基于 Vue.js 精心打造 UI 组件库,整套 UI 设计为 Material 风格。能够让没有任何设计技能的开发者创造出时尚的 Material 风格…

提示tun虚拟网卡没有安装_Win10家庭版通过Hyper-V安装Centos7+Python3.7过程总结

Win10专业版自带有虚拟机Hyper-V, 只需要在控制面板--程序中将其添加到应用就可使用,非常方便,但我电脑预装的是Win10家庭版,没有这个工具,但可以通过以下方法把它安装上:新建文件Hyper-V.cmd,文件内容&…

nginx 带宽_谈谈Nginx和LVS各自的优缺点以及使用

在最开始呢,咱们先说一下什么叫负载均衡,负载均衡呢,就是将一批请求,根据请求的内容,分发到不同的后端去进行相应的处理,从而提供负载分担,主备切换等功能。对于不同的负载均衡软件,…

wordpress 自定义分类url 重写_WordPress导航主题-WebStack导航主题

8月份写了一个导航主题,陆陆续续更新了十几版,功能自认已经很完善了,知乎也注册很久了,在这水片文章。首页截图预览地址一为忆 - 收集国内外优秀设计网站、UI设计资源网站、灵感创意网站、素材资源网站,定时更新分享优…

sql跨表查询_白话django之ORM的查询语句

教程源码:z991/django_turital在日常开发中,数据库的增删改查(CDUR)中,查询需求偏多,所以查询的语法比增删改操作多得多,尤其是跨表关联查询,可以让代码精简很多年。直接上代码吧&am…

看不懂论文代码怎么办_学位论文中的公式排版(制表位+mathtype+域)

写在前面为什么把公式排版单独拉出来写一篇文章呢?因为公式排版实在是太难了。公式居中标号右对齐,简直反人类好么。在学校期间一直寻找方便的公式排版自动编号方法,但搜索出来的大多只是用到了制表位,公式标号还要自己敲。最后毕…

利用trunk实现vlan内通信_实现不同VLAN间通信——单臂路由

单臂路由是一种实现不同VLAN间通信的技术,其方法是在虚拟机内接口上配置虚拟子接口。该技术是一种应急技术,仅仅用于网络预算不足,无力购买三层交换机,或者网络规模很小的情况下使用。一、实验路由器只需要一个端口和交换机(二层)…

java dispatchevent_java事件处理机制

java中的事件机制的参与者有3种角色:1.event object:就是事件产生时具体的“事件”,用于listener的相应的方法之中,作为参数,一般存在与listerner的方法之中2.event source:具体的接受事件的实体&#xff0…

java中的action是指什么_Struts2【开发Action】知识要点

前言前面Struts博文基本把Struts的配置信息讲解完了.....本博文主要讲解Struts对数据的处理Action开发的三种方式在第一次我们写开发步骤的时候,我们写的Action是继承着ActionSupport类的...为啥我们继承了ActionSupport类呢?下面我就会讲解到继承Action…

hql 查询条件 set集合_Redis从入门到深入-Sorted_set的value

1. sorted_set 类型新的存储需求,数据排序有利于数据的有效展示,需要提供一种可以根据自身特征进行排序的方式需要的存储结构:新的存储模型,可以保存可排序的数据sorted_set类型:在set的存储结构基础上添加可排序字段2…

pdm生成java_PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换

本篇文章主要介绍了PowerDesigner通过SQL语句生成PDM文件并将name和comment进行互相转换 超详细过程(图文),具有一定的参考价值,感兴趣的小伙伴们可以参考一下1.软件准备软件:Navicat 11.1,Powerdesigner 152.安装步骤第一步&…