软件测试工程师是做什么?

测试工程师是干什么的

测试工程师是项目开发过程中的质量检测者和保障者,负责产品质量的把关工作。主要的工作职责是理解产品的功能要求,并对其进行测试,检查软件有没有错误(Bug)决定软件是否具有稳定性(Robustness),并写出相应的测试规范和测试案例,从而提供用户满意的产品和服务。
以下是测试工程师的职责和作用的详细解释:

软件测试目的:减少软件缺陷(BUG),保障软件质量!

软件产生过程:

在这里插入图片描述

软件测试的过程:

在这里插入图片描述

一、测试工程师的职责

测试工程师的职位对任何生产过程都至关重要。
在将产品推向市场投入使用之前,需要测试工程师对其进行一个彻底的测试,来确保产品功能的正常,为客户提供满意的产品与服务。他们的日常工作可能取决于行业和项目,但包括以下一项或多项:

  • 在整个生产或开发阶段监控安全措施和标准。
  • 与各部门紧密合作,了解产品目标,打造高品质产品。
  • 构建测试框架,并根据产品设计团队的输入定义测试参数。
  • 使用测试框架来监控流程,记录结果并采取措施进行故障排除。
  • 开发多个测试用例并创建适当的测试环境来检查产品。
  • 提供改进测试产品的建议。
  • 确保产品符合团队和客户设定的所有质量标准。
  • 记录所有测试程序、结果和建议。
  • 使用测试结果进行数据分析。

二、测试工程师的工作内容

  1. 使用各种测试技术和方法来测试和发现软件中存在的软件缺陷,测试技术主要分为黑盒测试和白盒测试两大类,其中黑盒测试技术主要有等价类划分法、边界值法、因果图法、状态图法、测试大纲法以及各类典型的软件故障模型等;白盒测试的主要技术有语句覆盖、分支覆盖、判定覆盖、基本路径覆盖等。
  2. 测试工作需要贯穿整个软件开发生命周期。完整的软件测试工作包括单元测试、集成测试、系统测试和验收测试工作。单元测试工作主要在编码阶段完成,由开发人员和软件测试工程师共同完成,其主要依据是详细测试。集成测试的主要工作测试软件模块之间的接口是否正确实现,基本依据是软件体系结构设计。系统测试是在软件开发完成后,验证软件的功能与需求的一致性、验证软件在相应的硬件条件下的系统功能是否满足用户需求,其主要依据是用户需求。验收测试分为内测和公测,使用不同的人群来发现项目的缺陷。
  3. 测试人员将发现的缺陷编写成正式的缺陷报告,提交给开发人员进行缺陷的确认和修复。缺陷报告编写最主要的要求是保证缺陷的重现。要求测试人员具有很好的文字表达能力和语言组织能力。
  4. 测试过程中,为了更好地组织与实施测试工作,测试负责人需要制定测试计划,包括有测试资源、测试进度、测试策略、测试方法、测试工具、测试风险等。
  5. 测试人员为了更好更有效地进行测试,保证测试工作质量,需要在执行测试工作之前首先需要设计测试用例,形成测试用例报告。设计测试用例是保证测试质量的核心工作,很多测试技术都可以用来指导设计用例。
  6. 测试人员需要分析软件质量。在测试完成后,测试人员需要根据测试结果来分析软件质量,包括缺陷率、缺陷分布、缺陷修复趋势等。给出软件各种质量特性包括有功能性、可靠性、易用性、安全性、时间与资源特性等的具体度量。最后给出一个软件是否可以发布或提交用户使用的结论。
  7. 为了提高工作效率或提高测试水平,测试工作需要引进自动化测试工具,测试人员需要学会使用自动化测试工具,编写测试脚本,进行性能测试等。
  8. 测试负责人在测试工作中,还需要根据实际情况不断改进测试过程,提高测试水平,进行测试队伍的建设等。

三、必备技能

测试工程师需要具备以下几个方面的技能:

  1. 编程基础:了解基础的编程概念和语言如Java、Python等。
  2. 测试方法:熟悉多种测试方法,包括单元测试、集成测试和系统测试。
  3. 沟通能力:需要与开发团队、产品经理和其他利益相关者有效地沟通。

四、工作工具

测试工程师通常会使用以下几种工具:

  1. 缺陷追踪工具:如Jira、PingCode等。
  2. 接口测试:如postman、Apifox等。
  3. 自动化测试工具:如Selenium、Appium等。

五、测试的主流测试

1、、功能测试:测试主要验证程序的功能是否满足需求
在这里插入图片描述
测试用例:是为测试项目而设计的执行文档
测试用例的作用

  • 防止漏测
  • 实施测试的标准

2、自动化测试:使用代码或工具代替手工进行测试。

//仅供参考

import pytest as pytest
import requests
from common.send_request import SendRequest
class TestApi:

    access_token = ""

    #获得token
    def test_post_token(self):
        url = "http://ghcs123.test.dacaigou.cn:8000/uaa/oauth/token"
        datas = {
            "username":"13100000006",
            "password":"Abcd@123",
            "grant_type":"password",
            "client_id": "app_test",
            "client_secret":"test123"
        }

        res = SendRequest().all_send_request(method="post", url=url, data=datas)
        result = res.json()
        TestApi.access_token = result["access_token"]
        print(res.json())

    def test_post_login(self):
        url = "http://ghcs123.test.dacaigou.cn:8000/uaa/loginByUsername"+TestApi.access_token
        datas = {
            "username": "13100000006",
            "password": "Abcd@123",
        }
        res = requests.post(url=url, data=datas)
        print(res.json())

if __name__ == '__main__':  #入口
    pytest.main()

3、接口:有地址有参数
接口测试(代码实现):使用代码或工具对服务提供的接口进行测试
在这里插入图片描述

六、软件缺陷的核心内容:

  • 缺陷的标题
  • 缺陷的预置条件
  • 缺陷的复现步骤
  • 缺陷的预期结果
  • 缺陷的实际结果
  • 缺陷的必要附件

缺陷的提交要素:

在这里插入图片描述

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值