今日新开传奇_新开中变传奇_热血传奇新服网_新开网通传奇网站

您现在的位置: > 行业新闻 正文

维克多范科发:SOA设计实现与软件系统验证

时间:2021-11-18 21:38:11   标签:玛莎拉蒂gt  

那到底怎么做这个事情呢?模型和数据是什么概念?我们后面会看到。我们在做软件开发的时候,相应的我们的产品不可能开发一次都是没有任何缺陷的,但是我们还需要筛选出来哪些可以做回归,比如HiL台架上100万条测试用例执行后分析定位说10条是因为代码原因引起的,当修改代码后那如何做到代码单元测试、代码集成测试和系统测试?那只要去找到跟它有关联的测试,然后用相应的方式去做,而不是像原来系统工程师一样操作,在工具层面我们是可以解决这一问题的,当然这个也涉及到不同部门之间的衔接问题在里面,以软件的方式去驱动定义,去做相应的测试,我们一定面临的是如何快速地回归测试,也是我们极大的挑战在里面。当然Vector在这块也提供完整的工具来解决这个问题。

已被汽车行业开发验证广泛使用的工具CANoe,但它依旧及其重要的。我们汽车跟IT软件是完全不一样的,我们汽车行业开发软件后要做一系列的测试,每个环节全部是要做相应测试的,这里我们可以完全满足这些测试,我们在一个工具体系里面全部做完这些事情在里面,比如CANoe支持构建MiL、SiL、HiL、DV/PV和EOL测试。同时当服务通信出现后以APP测试为主,以及CANoe这边我们根据最近几年的积累和跟客户的合作,我们重新构建了软件体系去应对我们刚才提到的软件系统和SoA测试的问题,可以去承载相应的中间件协议,去编辑相应的解析数据信息在里面,我们对于SOA的事情还是在持续的增加功能,但是大的趋势我们是SiL,我们肯定要去做软件系统测试,所以CANoe未来也会在这个方面去承载我们相应的测试。我们这边也称之为SIL,这个跟传统的SIL是不一样的概念。传统SiL测试是背靠背测试,甚至很多时候并未实际落地实施。你原来的模型跟代码自己开发的不可能给OEM,但是我们现在是软件系统,我们通过一些手段把算法代码虚拟为dll,给OEM交付虚拟软件,OEM可以在非常早期持续构建子系统和整车,所有的模块全部是虚拟化的方式去提供出来的,作为供应商每天所开发的软件,如果你们供应商这边跟OEM的CI/CT环境打通的情况下,供应商每天设计的部分可以持续编译完了以后给到OEM,OEM可以去做测试,等到我们后面有真实样件时跟硬件无关的做回归,有关的做增加相应的测试在里面。

CANoe4SW是Vector今年即将发布的CANoe体系中的产品。那些软件我们是可以解决的,图中嵌入式系统的软件都是CANoe4SW的应用场景,我们会把软件部署到PC端、虚拟机或者是云端。我们拿相应的工具CANoe4SW去做软件系统功能测试,把相应的软件分为APP端和功能接口端,功能接口端把真实ECU和API换成在虚拟环境下对应的API变量映射起来,就可以去部署一个环境,让它运行起来。那这边也是一样的道理,我们能够通过对应的技术去做这件事情,这是敏捷快速迭代的基本保障。

这边我们能够通过CANoe去做这样的功能,但是如果对应的100万测试用例拿PC顺序执行,也是很费时间的,基本上不可能很快速地拿到结果,我们这边构建技术有新的产品CANoe4Server,采用并行测试技术,按照我们的服务器来进行相应的部署,那我们这边是对应的相应系统都可以去做支持,包括我们跟相应的交互对象可能有闭环的模型在里面,我们可以去实现部署和验证,要能够满足自动驾驶的测试,或有公司真正大规模去做CI的敏捷开发测试这种方式的需求,在CANoe4Server中的配置N足够大时,基本上几分钟你所有的100万条测试用例都跑完了,所以很快能够得到相应的结果。

针对ADAS而言,基于数据驱动的测试来验证软件系统是必须的。因为我们会有非常多的场景和数据去采集和产生,数据有两个部分,一部分是来自于我们相应的仿真环节,我们产生仿真场景去做我们的仿真数据,通过并行的方式去验证我们的软件是否可靠,另外我们也会通过相应的设备去采集数据,把场景的数据灌到场景里面去,去验证我们的软件系统是否是稳定可靠的,如果我们全部是需要用数据去训练的,那很多数据很多设备需要采集,这样我们就能够去部署大规模的测试系统,去验证我们相应的系统,因为你不这么做的话,L4以上的这个成本,你要在很短的时间里面去降低成本这是不可能的,也办不到的事情。Vector提供动力学和场景仿真工具DYNA4,同时也提供实车环境数据采集设备VX1161。

我们拿到数据要去做相应的测试,测试传统的方法有需求和测试规范,按文本的去写相应的脚本,然后再写报告得到验证。我们现在有一种新的方式,我们在传统开发的时候基于需求去建模,在V模型的左侧基于模型的方法是最好的设计理念,而不是手写代码。那反过来也是一样,我们测试的输入也是一样的,那我们对功能测试也可以建模,因为你建模的时候变量和参数做好配置,模型也能够生成对应的测试用例,无论是带有状态机的还是序列组合的方式能够以建模的方式灌到系统里面去做大规模的测试,建模里面各方面都是可以去适用的,Vector提供测试建模工具vTESTstudio,不仅覆盖传统测试方式也支持全新的测试框架和技术辅助大家。

还有一个很重要的点,我们的方法会变成敏捷的方法,但是当你采用有敏捷,你搭建了持续测试的环境,如果你没有自动化的测试脚本,你搭的环境是一个空架子。因为在中国我们很多时候会看到追风,但是你没有足够多的测试用力去考核你的系统,所以如果你只有按照相应的测试用例去做设计才可以达到真正的效果软件系统的验证。

  • 上一页
  • 1
  • 2
  • 3
  • 4
  • 4/4