首先,汽车软件测试,相比于手机软件测试,很明显的一个区别就是:汽车软件测试需要搭建硬线测试环境。
在我的测试经验中,嵌入式软件有的时候出现的问题很奇葩,就是莫名其妙的出现,莫名其妙的消失。当然,你可 以理解为"环境问题",或是"devices issue",但是你也大i可以去尝试分析出现这种"无厘头"问题的原因,有的时候T 顺藤摸瓜,了解低沉原理知识,你就可以去分析出导致这这个问题的原因。即便无法确切的定位问题,但是也可以大 概的认知到问题可能出现在那个模块。其实无论在什么时候,做什么工作,在工作过程中都会遇到问题,而重要的 是会去思考问题,分析问题,然后去耐心的解决问题。这这是一个很好的习惯,也是资历老的员工比新员工多出来的的 一种能力。在具体的工作中,手机软件测试,在手机有电但的情况下,你只需要把App装进去就可以进行测试了。类 而汽车软件测试,你测试的往往只是一个电子控制单元(ECU),为了让它工作,你需要把它接入到一个完整的闭哈 回路中,要连接电源、上位机以及电流计或者电压计,有有时候还需要接入对手件等,必要时还要接入屏幕、喇叭以 及多个电源,然后看到的画面里面就只有线束了.......有时时候测试只需要五分钟,搭建硬线环境就需要两小时......
因为线束太多,还出现过短路线束冒烟的情况.......所以每个测试工程师的桌面上基本上都是线的海洋,一片狼 藉......
其次,手机App测试,大多时候只要人和手机就构成用户使用测试场景了。然而因为很多汽车ECU开发过程是 没有实车测试环境的,需要创建仿真工程,以实现实车车测试的效果。在做测试时候我们需要利用一个测试硬件(CA Noe)创建一个仿真工程,以实现测试ECU和其他ECU的交]互。手机App测试,除了简单的功能测试外,还需要做 性能测试、接口测试等。源于互联网行业多年的发展,手机App这方面测试需要的工具在市场上已经有很成熟热的商 业用软件工具了,比如Jmeter、postman以及LoaderRunner等。然而车用软件一方面相比于互联网手机类APP软件 流量较小,所以对于网络负载等性能测试要求较低;此外,车用软件根据总线类型(CAN or LIN)有固定的性能测 试要求(一致性测试),这类测试多包涵物理层、数据链路层以及网络层等相关的测试,一方面包含硬件测试,另 外一方面,测试时候需要外接的设备较多(像LIN网络测试多多需要外接示波器),对于人工测试的需求更多一点, 因此可自动化的发展程度较低。正是因为这个原因,很多车企,力尤其是零部件供应商,多根据自己的产品自主研发 自动化测试框架,开展局部的自动化测试。从这个方面讲,车企的自动化工程师是很稀缺的,物依稀为贵哟。另 外,最重要的是,汽车软件产品研发周期长,测试任务相对较分散。不像大部分手机APP类软件,都迭代较快。因 为车上用的东西,都是与安全相关的。搞不好来个召回事件,很多零部件供应商都吃不消的。基于这个行业大背 景,车用软件的开发都会遵循一个严谨的开发流程(ASPICIE开发流程),一个项目的周期一般最少在两年,像宝 马奔驰类的项目,可能有做九年的(听公司老同事说的),一轮测试,周期也较长,所以节奏并没有很紧凑(加班 少),相对舒适,不像互联网手机APP类,动不动就要通宵达旦,我有几个做互联网类手机应用软甲的朋友,经常 一遇到软件发布,就是凌晨三点打下班卡。
基本上,一个软件测试工程师要想得到一个较满意的收入,市场对其提出了以下几点要求:
熟悉测试业务,基本功能(娱乐和仪表)、网络、诊断的的要测试经验要有(有2~3年测试经验)有测试管理经 验。
包括但不限于测试流程标准制定、测试任务分配与跟踪会会用测试工具,包括但不限于CANoe,SPY3,示波器 等会点自动化。
包括但不限于写自动脚本以及办公自动化等。
英语熟练。
每天激励自己好好干活的心理暗示就是,"我要好好学习业务,并为了明日跳槽...... 人总想着安逸,容易不自觉放慢进步的步伐。但也应该对当下心存感激,尤其是看了市场招聘需求,真是对公 司不感激都显得没良心,我们不贩卖焦虑,但是别把自己的雄心壮志埋没在工作的一地鸡毛与生活的琐碎中,加油 吧,以下一句话,我们共勉:"你是这样年轻,一切都在开始。