51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1219|回复: 1
打印 上一主题 下一主题

[转贴] 作为一名优秀的软件测试工程师,需要具备哪些能力?(上)

[复制链接]
  • TA的每日心情
    无聊
    12 小时前
  • 签到天数: 1052 天

    连续签到: 2 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2021-12-9 13:15:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
     一、业务流程分析能力
      1.分析整体业务流程

      对整个公司的业务不了解,根本无法进行测试。
      2.分析被测业务数据
      在这个行业中,要了解哪些数据呢?哪些是要用户提供的?哪些是自己提供的?有哪些可以是假数据?有哪些必须是真数据?添加数据的时候可以用哪个库?
      了解了整个软件的数据库体系结构,才能了解哪一张数据来自哪个表,其逻辑如何,是否存在连带关系。
      3.分析被测系统架构
      用什么语言开发的?用的是什么服务器?要在哪种环境下测试它呢?整体的测试环境是什么样子的?
      如果缺失,要建造环境和架构。一般说来,在进入一个新公司后,体系结构就已经搭建好了,了解了,熟悉了这些老员工以前所用的体系结构。
      4.分析被测业务模块
      完整的软件有哪些模块,比如主页、注册页、登录页、会员页、商品详情页、优惠页等。
      找出有多少模块要测试,每个模块之间的连带关系,然后如何分工。
      5.分析测试所需资源
      我需要几台计算机,要几部手机,手机要什么样子的系统,什么样子的型号。
      比如测一个网站的性能的时候,电脑的配置达不到测试高并发的5000人的标准,要不升级电脑的硬件配置,要不多机联合,多机联合时要几台电脑,都要提早筹备。
      6.分析测试完成目标
      我的性能目标是什么样子的?我的功能目标是什么样子的?我要上线达到的上线标准是什么样子的?
      例如,当我想达到5000人的高并发性目标时,CPU的占用率不能超过70%,内存的占用率不能超过60%,响应时间不能超过5秒。
      功能目标,如整体业务流程运行,所有分支流程无问题,所有接口可相互调用,整体UI界面无问题,兼容性无问题等。
      弄清楚这些问题,测试的思路就会很清楚。
      二、缺陷洞察能力
      1.看到一般缺陷的能力。

      至少你应该满足看到一般缺陷的能力,这是最基本的,如果你甚至找不到最简单的一般缺陷,更不用说优秀的测试工程师了,你说你是测试我不相信。
      2.隐性问题的看到能力
      软体测试过程中有些缺陷隐藏得比较深,有的是性能问题,有的是功能问题,有的则是因为设置了一些特殊的条件。
      比方说买双鞋一定要选择哪个牌子,要选择红色的颜色,要选择44号,而且要选择特殊的付款方式才会有这样的bug,这一点尤其隐晦。要想看到这种问题,一定要比别人更强,找出一些别人无法看到的bug。
      3.看到连带问题的能力
      当看到一个缺陷时,你可以考虑通过这一个缺陷可能导致其他地方的问题,这被称为连带问题。而不是说看到这一个bug之后提了这一个就算是完了,一定要有一个察觉,可能其他地方也存在这样的问题。
      4.发现问题风险的能力
      有些软件可能有一些操作模块,或代码写界面,表面上没有问题,但有风险,如界面不稳定,当他传输的数据有一些问题时,最终结果可能是报告错误是报告404或报告乱码。
      5.尽快发现问题的能力
      假如你只能停留在界面层面,那么你就无法尽快发现问题。
      你必须等到前端人员完成每个界面后才能进入测试,我可以比你早一个月进入测试,然后我比你快一个月完成测试,你比我晚一个月,因此大家的工资一下子就打开了。
      6.能够查明问题的根源
      要了解这种缺陷到底是由什么原因引起的,是哪类缺陷,是ui前端的人做的问题,还是后台界面的人做的?
      不但要发现这一个bug,还要了解造成bug的原因,这类测试人员是非常优秀的,受到尊重的,bug的提法也会有所不同。
      三、团队协作能力
      1.合理分工。

      合理分工是提高效率的重要保证。
      2.协助小组成员解决问题。
      例如,测试是为了赶上进度,或者软件项目的质量控制是由一个团队控制的,帮助团队成员解决问题尤为关键。
      3.相互配合完成测试任务
      每个队里的人分工不同,他们的任务不同,这就是我们所说的合作。你的事情已经完成了,轮到我了,我的性能测试应该轮到你了,因此在整个过程之后,每个人都应该履行自己的职责,非常密切地合作。
      4.相互配合开发重现缺陷
      我给你提bug,你改我的bug,大家的目标只有一个,便是让这一个软件变得更好,因此在这样的情况下,大家就一定要相互配合开发。
      5.督促项目整体进度
      既然是一个团队协作的过程,就一定要互相的去督促对方,包括督促开发去改bug,因为开发人员他们有时候业务流程很忙,他们不知道要先改哪些问题,要后改哪些问题,但是往往有一些缺陷,它影响了测试的这一个时间,影响了测试的进度,那么这个时候就要测试员去督促开发人员,让他尽快的去解决你棘手的问题。这个东西能够提高大家的测试效率。
      6.出现问题勇于承担
      愿意背锅的最后都成为了领导,不愿意背锅的最后依然是员工。
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-27 21:35 , Processed in 0.119822 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表