关于汽车软件测试的几点想法

如果你有过汽车行业的从业经验,你就应该知道,过去汽车行业只做测试,而不做开发。汽车制造商的主要任务(从工程角度看)是将来自数百家供应商的数千个零部件组装在一起。考虑到现代软件的复杂性和客户的“挑剔”,最终产品要达到高质量是非常困难的。

在本文中,我想谈谈作为汽车行业工程师可能会遇到的一些软件测试问题。

招聘软件测试工程师时背景重要吗?

既重要又不重要。

让我们考虑一下你的特定行业背景真的很重要吗?

如果你以前的经验只涉及一个特定领域,并且只包括手动测试程序,那么转到另一个行业将是非常痛苦的。很多做法对你来说都是全新的。就像APP的手动测试与汽车的手动测试完全不同。

如果一个人拥有很强的测试自动化技能和软件测试的基础知识,那么事情就会变得简单得多。测试自动化意味着掌握编程、逻辑、分析、故障追踪等技能。这反过来又带来了无限的可能性和应用经验的领域。此外,一个领域的经验还能为另一个领域带来一些新方法。

给职员的建议:学习测试自动化,即使你还没有发现在日常工作中实施它的方法,它迟早会到来的。

给雇主的建议:如果您想聘用一名测试自动化专家,不要过于关注其背景,而应更多地关注其基本技能。

自动化还是不自动化?

答案是肯定要的。但你必须始终牢记测试自动化的成本。无论你从事哪个行业,测试金字塔都是你必须遵循的黄金法则。

图片

如果可能,较低层次的测试都应完全自动化,而较高层次的测试则必须在自动化之前进行全面评估,因为自动化的成本可能会很高。也许你的工程师可以做得更快、更便宜或更有效。

另一种代表测试金字塔的方法称为“左移”。

图片

其目的是一样的--大部分测试必须尽早进行。

单元测试、单元集成测试、组件测试、系统测试--所有这些层次的测试都必须在汽车制造之前完成,当然,目标是尽可能实现高度自动化。

此外,有些测试必须保持手动,例如在生产中使用特殊工具的程序。因此,工程师必须验证这种特殊工具的使用方式是否与工厂员工在生产中使用的方式相同。

给职员的提示:不要等到有了成熟的软件才开始自动化测试。从交付第一个原型开始,然后随着软件包的增长,增加测试自动化的装备。

给雇主的建议:从一开始就将测试自动化纳入测试策略和思维模式。为测试自动化提供工具和支持,使其成为 "完成定义 "的一部分。

持续集成(CI)

这是测试自动化真正带来真正好处的地方,但没有什么是免费的。

要实现CI,至少需要三个先决条件:思维方式、测试自动化和基础设施。让我们逐一讨论:

  • 思维模式。汽车行业的许多工程师习惯于以传统方式工作,而不了解世界正在以几乎不可预测的方式快速发展。在这种混乱的环境中,没有持续的测试是绝对不可能的,我所说的 "持续 "是指每天或每次更改软件或从供应商处收到新版本时。这种方法必须是必不可少的,并得到组织的支持。在每一个时间点,你都应该能够知道软件集成的状态。这些信息将在项目交付过程中带来难以置信的好处。

  • 测试自动化是实现CI的第一步。因此,在决定全面进入 CI 之前,请确保至少在某种程度上已经实现了测试自动化。持续集成的目的是进行回归测试,提供软件的当前状态,确保向客户交付经过验证的产品。而只有测试自动化才能快速、持续地为您提供此类数据。

  • 基础设施。使CI价格昂贵的并不是昂贵的设备(各种类型的测试台和计算机,它们的功能仅限于你的想象力),而是开发和维护 CI 环境的人员。根据公司的特定需求开发和维护 CI 环境的人员,这才是关键。由于需求量大、可用性低,CI 开发人员(或 DevOps)在就业市场上相当有价值。CI 机器的规模越大,需要的 DevOps 工程师就越多。

但是,一旦你准备就绪并正确使用了所有部件,你就会比尚未准备好使用 CI 的竞争对手获得难以置信的优势。这些是 CI 最明显的优势:

  • 不仅在单元或组件层面,甚至在系统或车辆层面,都能获得有关软件状态的实时信息

  • 低质量(或失败)软件将不会发布到下一级集成中

  • 向测试人员和开发人员提供更快的反馈意味着更快的错误修复

  • 不间断测试。由于测试活动是自动化的,因此即使在非办公时间,测试过程也不会停止。

软件测试的后续步骤(ML、数据分析)

机器学习、数据分析、人工智能……这些流行词即使对于非 IT 人员来说也是众所周知的,但我还没有看到上述技术在软件测试中得到充分的使用。我预见的可能用途是在测试结果分析中使用机器学习/数据分析。基于特定逻辑(数据分析)或将测试结果连续反馈给系统(ML)。

这可能会减少故障追踪的工作量,但所有这些都是猜测,没有经过我这边证实的例子。

给职员的提示:密切关注实际情况,不要错过成为行业第一的机会,但也不要着急。

给雇主的提示:倾听员工的意见,他们可能最了解社区中流传的事情。

测试是职业生涯的死胡同吗?

我在软件测试社区多次看到有人提出这个问题。测试人员并不清楚如何才能实现自我价值。我认为这在很大程度上取决于公司的文化。如果测试人员得不到与其他员工同等的尊重,并将生产中的错误归咎于测试人员,那么这样的公司文化无疑是比较糟糕的。

在其他情况下,测试人员可以自由选择职业道路。他们可以是高度专业化的专业人员或开发人员(嵌入式 SW 开发人员、测试工具开发人员、DevOps 工程师)。测试人员也可以选择管理职业。但项目和产品管理需要一些额外的教育和对公司业务的了解。

给职员的建议:永远不要停止学习。走在你最感兴趣的领域的最前沿,多阅读学习。

给雇主的建议:不要低估软件测试人员,他们的批判性思维、对细节的关注和洞察全局的能力(软件测试人员的共同特点)是非常宝贵的技能,可以很好地运用到其他领域,培养你的团队伙伴。

如果你对上述主题有任何看法,请在评论中告诉我。

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

 

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

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

相关文章

Rufus 制作启动盘 | 便携的工作空间

唠唠闲话 最近服务器硬盘故障多,在修复过程中,学习了一些操作,这里做个记录。本期主要介绍 U盘启动盘的制作,以及持久化存储。 U 盘启动盘 镜像选择 Ubuntu 的版本命名遵循 “Adjective Animal” 的模式,即 “形容…

【trition-server】python-backend 源码阅读

c++ 的stub 代码import 了 python的类 sys 和 triton_python_backend_utils.pystub本身是一个进程,与主进程做IPC通信docker 运行一个trition-server (base) zhangbin@ubuntu-server:~$ docker run --shm-size=1g --ulimit memlock=-1 -p 8000:8000 -p 8001:8001 -p 8002:8002…

windwos环境和pyspark环境问题解决-记录

一: 打不开cmd/cmd闪退问题解决 1.winR打开 regedit 2.在注册表找到 HKEY_CURRENT_USER\Software\Microsoft\Command Processor路径 3.在该路径下找到AutoRun,将数值改为空 可能原因:找到AutoRun 发现值是: if exist & if…

新港海岸NCS8822 低功耗DP转VGA 分辨率支持1920*1200*60HZ

NCS8822描述: NCS8822是一个低功耗显示端口到vga转换器。NCS8822集成了一个与DP1.2兼容的接收器和一个高速三通道视频DAC。对于DP1.2输入,NCS8822支持1车道/2车道,也支持车道交换功能。对于VGA输出NCS8822,在60Hz帧率下对WUXGA&a…

C++ 栈-队列-优先级队列

目录 1 栈 2 队列 3 deque 介绍 4 优先级队列 5 反向迭代器 栈也是我们在C语言就模拟实现过的一种数据结构,在C中,栈其实和我们前面模拟实现过的string、vector等容器有一点区别,站起是不是容器,而是一种容器适配器,我…

java必知必会-j2ee规范(上)

文章目录 一、WEB三大规范二、j2ee相关接口(上)1.javax.servlet.Servlet2.javax.servlet.http.HttpServlet3.javax.servlet.ServletRequest4.javax.servlet.http.HttpServletRequest5.javax.servlet.ServletResponse6.javax.servlet.http.HttpServletResponse7. javax.servlet.…

k8s record 20240705

k8s 安全管理 request 是1g,你得不到要求,我就不创建了,这就是准入控制二次校验 SA就是serviceAccount。 内部是SA和 token, 外部用户进来就是 .kube/config文件 namespace下的是role,整个集群是 ClusterRole. 动作就是Binding li…

pytest-rerunfailures:优化测试稳定性的失败重试工具

笔者在执行自动化测试用例时,会发现有时候用例失败并非代码问题,而是由于服务正在发版,导致请求失败,从而降低了自动化用例的稳定性,最后还要花时间定位到底是自身case的原因还是业务逻辑问题,还是其他原因…

大数据面试题之Presto[Trino](3)

目录 Presto如何处理数据的聚合操作? Presto支持哪些类型的JOIN操作? 如何在Presto中使用子查询? 解释Presto中的窗口函数。 Presto中的Page和Block是什么? 描述Presto如何处理列式存储数据。 ORC和Parquet格式在Presto中的…

适合家居建材企业的CRM系统盘点(2024版)

当前,CRM市场上,国际巨头的市场优势正在逐渐减弱,国内CRM企业奋起追赶,呈现出强劲的崛起势头。因此,对于家居建材企业来讲,在进行CRM选型时,如何选择一款合适的系统是关乎企业高效发展的重要课题…

探索C嘎嘎的奇妙世界:第十九关---STL(list的模拟实现)

1. 基本框架 首先&#xff0c;我们先从节点的准备工作入手&#xff0c;请看示例&#xff1a; #pragma once #include<iostream> #include<assert.h> using namespace std; //节点 template<class T> struct ListNode {ListNode<T>* _next;Li…

矩阵键盘与密码锁

目录 1.矩阵键盘介绍​编辑 2.扫描的概念 3.代码演示&#xff08;读取矩阵键盘键码&#xff09; 4.矩阵键盘密码锁 1.矩阵键盘介绍 为了减少I/O口的占用&#xff0c;通常将按键排列成矩阵形式&#xff0c;采用逐行或逐列的 “扫描”&#xff0c;就可以读出任何位置按键的状态…

免杀笔记 ----> ShellCode Loader !!!

学了那么久的前置知识&#xff0c;终于到了能上线的地方了&#xff01;&#xff01;&#xff01; 不过这里还没到免杀的部分&#xff0c;距离bypass一众的杀毒软件还有很长的路要走&#xff01;&#xff01; 目录 1.ShellCode 2.ShellCode Loader的概念 3.可读可写可…

字符串函数5-9题(30 天 Pandas 挑战)

字符串函数 1. 相关知识点1.5 字符串的长度条件判断1.6 apply映射操作1.7 python大小写转换1.8 正则表达式匹配2.9 包含字符串查询 2. 题目2.5 无效的推文2.6 计算特殊奖金2.7 修复表中的名字2.8 查找拥有有效邮箱的用户2.9 患某种疾病的患者 1. 相关知识点 1.5 字符串的长度条…

代码随想录算法训练营第四十四天|188.买卖股票的最佳时机IV、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费

188.买卖股票的最佳时机IV 题目链接&#xff1a;188.买卖股票的最佳时机IV 文档讲解&#xff1a;代码随想录 状态&#xff1a;不会 思路&#xff1a; 在股票买卖1使用一维dp的基础上&#xff0c;升级成二维的即可。 定义dp[k1][2]&#xff0c;其中 dp[j][0] 表示第j次交易后持…

虚拟ECU:纯电动汽车发展下的新选择

人类文明的进步是一个不断自我否定、自我超越的过程。21世纪以来&#xff0c;随着科技进步和经济社会发展&#xff0c;能源和交通系统已从独立于自然环境的孤立系统&#xff0c;转变为与自然、技术、社会深度耦合的复杂系统。为实现可持续发展和应对气候变化&#xff0c;世界各…

【居家养老实训室】:无障碍设施建设与评估

本文围绕居家养老实训室中的无障碍设施建设与评估展开讨论。首先阐述了无障碍设施对于居家养老的重要性&#xff0c;接着详细介绍了常见的居家养老无障碍设施类型&#xff0c;包括出入口、通道、卧室、卫生间等区域的设施。然后重点探讨了无障碍设施的评估方法和标准&#xff0…

【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——AVL树

目录 1 -> 底层结构 2 -> AVL树 2.1 -> AVL树的概念 2.2 -> AVL树节点的定义 2.3 -> AVL树的插入 2.4 -> AVL树的旋转 2.5 -> AVL树的验证 2.6 -> AVL树的性能 1 -> 底层结构 在上文中对对map/multimap/set/multiset进行了简单的介绍&…

《简历宝典》02 - 如果你是HR,你会优先打开哪份简历?

现在的求职环境不必多说&#xff0c;其实我们大家都还是很清楚的。所以&#xff0c;在这个环境下&#xff0c;写一份优秀的简历&#xff0c;目的与作用也不必多说。那么&#xff0c;这一小节呢&#xff0c;我们先从简历这份文档的文档名开始说起。 目录 1 你觉得HR们刷简历的时…

【深度学习】图形模型基础(5):线性回归模型第二部分:单变量线性回归模型

1.引言 在统计学与机器学习的广阔领域中&#xff0c;线性回归作为一种基础而强大的预测技术&#xff0c;其核心在于通过输入变量&#xff08;或称预测器、自变量&#xff09;来估计输出变量&#xff08;响应变量、因变量&#xff09;的连续值。本章聚焦于线性回归的一个基本但…