一个成熟的软件测试工程师应该具备那些“技能”

news2024/11/25 20:11:52

1、良好的沟通

相信大家都在网上看到过各种吐槽程序员不解风情的段子,开怀大笑之余深思,作为一个测试工程师又何尝不是如此?通常沟通技能成为横亘在测试工程师与其他合作部门之间的万丈鸿沟,也成为测试工程师成长的最大瓶颈。下面的这些情况你是不是经常遇到:

  • “这功能你测了吗?测了为什么还有bug?”
  • “我特么刚测完,为毛又改需求?”
  • “xx怎么又偷偷提交东西,提前告诉我测试下行不行?”
  • “这功能原型还用得那么详细吗?这是常识懂不懂?”
  • 。。。。。。

如此种种,某测试工程师已经哭晕在角落。

面对这些或明或暗的丛林法则,我们怎样做到适者生存呢?

一个优秀的游戏测试工程师要解决非常多的测试工作之外的困难,而沟通则是首要解决的。遇到问题需要多沟通,多主动沟通,最忌讳的就是低头猛干,结果花费了很多时间发现干的根本不对,还得从头再来,不仅浪费了自己的时间,也使整个项目的工期发生延期的概率大大增加。

沟通是双向的,我们不能把问题都归咎于合作部门的需求不明确或者开发人员考虑得不严谨,遇到问题我们也要多反思自己是否沟通到位。笔者曾经遇到过测试人员坐在开发员旁边,遇到问题都懒得问一句,只是低头闭门造车的情况。

遇到问题多问,不要以为你以为的就是你以为的。

2、责任心

游戏测试工程师有假期么?不得不悲哀地承认,没有假期,甚至没有可以深度睡眠的夜晚。。。

其实在这一小节我只想谈2个字:责任

无论多晚,无论是否在陪女朋友吃饭看电影,一个电话,我们都会义无反顾的回到电脑面前解决问题,也许有些人认为我们不正常,也许有些人问我们这么拼为什么,我也不知道,在面临家人和朋友的愧疚感和对工作的责任感面前,我们选择了后者。

没有什么高大上的理由,没有什么感人至深的故事,没有什么个人英雄主义,只是因为我们选择了,就去把它做好,这是我们的责任。

3、持续的努力

“30多岁了,有家有孩子了,肾都虚了,你还拼的过年轻人么?” 这是我们一群老测试员聚会时经常谈论的话题。是啊,测试工作有时候确实是个体力活,尤其是项目快上线的时候,几天几夜熬着都是家常便饭,更要命的是现在参加工作的新人都是90后了,看着这群生龙活虎的同事们,不禁各种感慨。

然而老骥伏枥,志在千里。

我们依旧在坚持,测试工作本身重复性劳动就比较多,当初选择了这份职业,也就同时选择了坚持。坚持把负责的工作做好,坚持拓展自己的测试深度和广度,坚持学习新的测试技术,坚持把自己的知识和经验传承下去。

坚持,是我们做好测试工作的基石。

很多人徘徊在放弃和继续的门口,测试太辛苦了,不过,咬咬牙,就过去了。

回望路上的血与泪,尽是光荣与梦想的化身。

4、积极主动

“这不是我的活,为什么让我干?” 笔者经常听到这样的抱怨。在工作总量不变的情况下,有人少干了,自然有人多干,反之亦然。任何个人都很难在互联网行业单独完成一件事,大部分需要团队合作,认清这个事实,我们就得尝试着去理解合作的事情和合作的人,以让我们整个团队都能高效的运转。

5、对自己有信心

“这个版本能发么?”

“放心,没问题。”

这是我听到最赏心悦目的乐章,也是测试工程师最霸气侧漏的时刻,在这一刻,我仿佛看到了神的光芒。这就是一个优秀测试工程师的自信。

这份自信来源于我们一遍又一遍地详细测试,来源于巨大压力下谨小慎微的辛勤付出。

我们无需做到让每一个人尊重,也无需做到让每一个人理解,每当版本发布时,有这份自信就够了。

6、淡定的心

在效率和周全面前,我们有时候面临着两难的选择。有些测试人员一发现问题,就立刻去找开发让其修改,这种现象不能说不好,只是觉得不够淡定从容。个人认为发现问题后,我们需要多测试几次,确保能够复现并详细地记录下复现步骤,同时尝试拓展思考一下,是否在别的模块存在同样的问题并去验证下。确保这些工作都做完之后,再把问题拿去跟开发讨论下,可能更合适一些。举一反三,归类处理,这对整个项目的效率而言是非常有益的。

7、与时俱进

每个项目所应用的技术都不一样,甚至同一项目,随着项目周期的发展,也会不断加入新的技术方案。当然还有各种工作流程上的变革,可能时常会令我们感到烦恼,毕竟改变一个人的习惯是非常难的事情。我们怎样看待和适应这些可能随时发生的变革?首先,我们不应该抗拒,改变旧习惯确实会令我们感到不适,甚至出现情绪上的波动,我们需要思考的是我们能阻止这些变革吗?如果不能,我们应该怎样去适应?或者我们有没有更合理的变革方案?使整个项目变得更好一些。

无谓的抗拒,而不去思考怎样让变革更合理一些在我看来是愚蠢的。其次,我们应该敞开胸怀,与变革一起起舞。变革是永恒的,我们应该学会在变革中不断地拓展自我,提升自我,从而让我们成为变革的受益者。

  如何你正在学习软件测试或者想转行软件测试请务必看完下面这些建议

软件测试怎么学习?

相对互联网其他岗位而言,软件测试入门是非常简单的。虽然后期涉及到自动化测试等内容的时候回相对较复杂,但是对于新手而言,入门以及进入这个行业才是第一步。在工作中不断的积累经验以及提升个人能力。那入门阶段我们需要怎么做呢?

1、首先我们可以通过图书或者通过网络公开视频深入了解软件测试的概念以及相关的基础理论知识。这个过程大概一个月内就可以完成,主要是检验自己是否适合能够快速接受理解软件测试相关的知识。

2、有了一定的基础理论知识之后,可以找一个软件自己亲自按照方法检验一下自己学习的效果,从开始写测试计划、测试用例、到自己完成测试、并输出测试报告。在实际动手过程中肯定会遇到各种问题,将这些问题记录下来,可以通过加入社群咨询或者论坛交流的方式解决这些问题。最重要的是发现问题之后,在之后的学习中可以重点去学习相关的内容。一般而言,对于体量比较小的产品需要用1个月左右的时间,而比较复杂的产品则要用2个月,甚至更久。建议从小产品入手比较好。

3、在有了实际的操作经验之后,可以通过招聘网站的招聘要求,对应该公司的产品,再次进行实际测试。(一般情况下,如果去面试的时候能对该公司的产品有一定的了解程度,那面试成功的几率会更大)。

4、有了实战经验,就要开始尝试面试了。软件测试属于技术岗位,所以在面试的时候面试官会问一些关于技术的问题。你可以从网上找一些相关的软件测试面试题,遇到问题迅速查漏补缺,这样再去面试基本就没有任何问题了。

5、以上方法仅仅是介绍通过自学的方式,当然你也可以通过专门的培训机构去学习软件测试知识。课程内容涵盖基础功能测试、接口自动化、Web端自动化、移动自动化、性能测试,通过企业级实战项目,确保你从理论学习到实践,真正掌握中高端的测试技术。这样在学习完成后,你直接可以去面试了。

以上就是为大家介绍的怎样快速学习软件测试?软件测试学习方法!当然建议大家根据自己实际的自学能力来选择相应更加适合自己的方式学习软件测试。

首先学习路线不能错,不然就是在原地踏步。

系统知识储备:linux、互联网网络基础、数据库、编程基础。

  linux基础:1、linux系统了解和环境熟悉

       2、常用的linux命令

         3、linux文件属性、权限、用户管理

       4、linux环境安装和使用

       5、环境变量

  互联网网络基础:1、网络架构通讯原理

          2、TCP、UDP、HTTP协议

          3、session与cookie

  数据库:1、mysql、oracle

      2、环境搭建与应用

      3、sql使用(关联查询、删除修改),存储过程,事务与编程

  编程基础:1、java、python

       2、开发环境与基本语法,类与对象,面向对象

       3、简单的框架


功能测试核心:测试模型,测试流程,用例设计,缺陷管理

自动化测试:web前端开发基础,浏览器调试工具,接口测试工具使用,web自动化测试(selenium),自动化测试框架,自动化测试平台

自动化测试框架:

性能测试:性能需求分析,性能测试工具使用,性能监控分析和调优

安全测试:抓包工具使用,安全漏洞原理,安全漏洞测试方法,漏洞的防范

测试进阶:sell脚本,测试工具的研发,敏捷测试&TestOps,mock,Docker,大数据测试

正在做测试的朋友可以进来交流,群里给大家整理了大量学习资料和面试题项目简历等等.... 

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

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

相关文章

Vector-常用CAN工具 - 以太网报文收发方向

目录 Rx 和 Tx 标记 Example:从 CANoe 向 ECU 发送以太网数据包 用例 2:从 ECU 接收以太网数据包 如何仅显示物理或虚拟通信 如何仅显示 Rx 或 Tx 以太网数据包 VN5000以太网包过滤 1、什么是硬件过滤? 2、什么时候使用硬件过滤&…

useEffect,useLayoutEffect的基础知识和底层机制

useEffect 是 React 中一个重要的 Hook,用来处理组件的副作用操作。它的基础知识包括两个方面:执行时机和参数。 执行时机: useEff ect 的执行时机包括两种情况: 组件挂载时,即第一次渲染之后。组件更新时&#xff…

智能垃圾分类小程序,流量主变现,外卖cps权益变现,uniCloud云开发无需购买服务器和域名,助力每一位创业者。

技术优势 基于 uniapp uniCloud 研发,无需购买服务器和域名,uniCloud 是 DCloud 联合阿里云、腾讯云 serverless 构建。从此不用关心服务器运维、弹性扩容、大并发承载、防DDoS攻击等,轻松应对高并发应用, 传统小程序开通流量主…

Qt 多语言实现

简介 Qt Linguist 提供了一套加速应用程序翻译和国际化的工具。Qt 使用单一的源码树和单一的应用程序二进制包就可同时支持多个语言和书写系统。 使用 QTranslator 来加载生成的 qm 文件,就可以让程序显示指定的语言。 // 国际化翻译 QString language "CH…

项目Es、kafka、mysql容量评估方案和服务器资源预估方案

目录 1、Es 评估计划 一个接口jmeter压测qps 1万, logstash 读取日志文件写入es Logstash配置 Es容量变化前后差值/1万 * 1.67 * (1副本数) ~ 次接口es 容量 (日志数据30kb) 影响es存储的主要原因 通过 kibana 查看 堆栈》索…

管理类联考——英语——技巧篇——阅读理解

一、阅读理解A节选项的点 1.正确答案的五大特征 (1)“主题为王”原则:即正确答案通常与文章的中心思想、主旨大意有关。 (2)正确答案的特点:语言简化、反话正说、正话反说、关键词替换。 (3)正确答案要选相对的,不选绝对的。正确答案通常含有…

编译原理期末速成-LL(1)文法、FIRST集、FOLLOW集

文章目录 LL(1)文法的条件LL(1)分析法构造FIRST(α)构造FOLLOW(A)习题强化 LL(1)文法的条件 文法不含左递归 对于文法中每一个非终结符A的各个产生式的候选首符集两两不相交。即若 对于文法中的每个非终结符A,若它存在某个候选首符集包含ε,则 这里&am…

面试被问到:测试计划和测试方案有什么区别?

面试的时候,很多小伙伴都被面试官问过这个问题 “测试计划和测试方案有什么区别”? 到底有什么区别呢?我们先好好了解下这两个文档。 一、测试计划 1、测试计划是什么? 测试计划是组织管理层面的文件,从组织管理的…

Jetpack Compose 中使用 CameraX 拍照和录制视频

在 Android 开发的历史中,Camera 的 API 是一直受人诟病的,使用过的人都知道,直观的感觉就是配置复杂、臃肿、难用、不易理解,从官方关于 Camera 的 API 迭代路线可以看出官方也在尝试着不断改进开发者关于Camera的使用体验&#…

ChatGPT编程

ChatGPT问答 问题一:如何合理分配时间问题二:以下是提高工作效率的建议:问题三:如何培养兴趣问题四:软件和硬件谁重要问题五: 设计模式如何熟练运用问题六:C语言编程冒泡排序 问题一:如何合理分配时间 这里…

Java实训第八天——2023.6.14

文章目录 一、vue的环境搭建:二、文本数据绑定三、属性数据绑定四、事件绑定五、案例1——全选/全不选六、案例2——切换图片主要内容: v-if 、v-show指令 七、表单数据绑定八、综合练习总结步骤: 一、vue的环境搭建: 官方文档&a…

Mysql数据库中的约束、用户管理与授权

文章目录 一、Mysql中常见的约束总结 二、数据表高级操作2.1克隆表,将数据表的数据记录生成到新的表中2.2清空表,删除表内的所有数据2.3创建临时表2.4创建外键约束,保证数据的完整性和一致性。 三、数据库用户管理3.1新建用户3.2查看用户信息…

《设计模式》之适配器模式

文章目录 1、定义2、动机3、应用场景4、类结构5、优缺点6、总结7、代码实现(C) 1、定义 把一个类的接口转换成客户端所期待的另一种接口,从而使原接口不匹配而无法再一起工作的两个类能在一起工作。 2、动机 在软件系统中,由于应用环境的变化&#xf…

Spring源码解密--事务篇

文章目录 一、事务的实现方式1、JDBC2、Spring基于xml配置编程式事务声明式事务 二、源码设计1、TransactionManager1)TransactionManager2)PlatformTransactionManager3)ReactiveTransactionManager 2、TransactionDefinition3、Transaction…

压缩感知入门——基于总体最小二乘的扰动压缩感知

压缩感知系列博客:压缩感知入门①从零开始压缩感知压缩感知入门②信号的稀疏表示和约束等距性压缩感知入门③基于ADMM的全变分正则化的压缩感知重构算法 文章目录 1. Problem2. 仿真结果3. MATLAB算法4. 源码地址参考文献 1. Problem 一个经典的压缩感知重构问题可以…

Git的原理与使用

背景知识: 我们在编写各种文档时,为了防止文档丢失,更改失误,失误后能恢复到原来的版本,不得不复制出一个副本。每个版本有各自的内容,但最终会只有一份报告需要被我们使用 。但在此之前的工作都需要这些不…

day10_类中成员之变量

通过以前的学习,我们知道了成员变量是类的重要组成部分。对象的属性以变量形式存在,下面我们就来详解的学习一下类中的变量 成员变量 成员变量的分类 实例变量:没有static修饰,也叫对象属性,属于某个对象的&#xf…

9k字长文理解Transformer: Attention Is All You Need

作者:猛码Memmat 目录 Abstract1 Introduction2 Background3 Model Architecture3.1 Encoder and Decoder Stacks3.2 Attention3.2.1 Scaled Dot-Product Attention3.2.2 Multi-Head Attention3.2.3 Applications of Attention in our Model 3.3 Position-wise Feed…

Linux 数据库 MySQL

Linux系统分类 ^ 数据库的分类 Linux系统 Centos(获取软件包使用yum、dnf) Ubuntu(获取软件包使用apt-get) Suse 国产系统 华为 欧拉 阿里 龙蜥 腾讯 tencentOS 麒麟(银河麒麟、中标麒麟->基于centos 优麒麟-> 基于Ubuntu ) 统…

流计算、Flink和图计算

流计算 流计算流计算概述静态数据和流数据批量计算和实时计算流计算概念流计算与Hadoop流计算框架 流计算处理流程数据处理流程数据实时采集数据实时计算实时查询服务 流计算的应用开源流计算框架StormStorm简介Storm的特点 FlinkFlink简介为什么选择Flink传统数据处理架构大数…