近日,中国软件网对广州凯乐软件技术有限公司(以下简称凯乐软件)技术总监、软件单元测试实践专家王彤先生进行了专访。据了解,王彤已经在单元测试领域从业16年之久,专注于重要用户培训与支持、单元测试工具需求分析,以及关键技术攻关。
凯乐软件技术总监、软件单元测试实践专家 王彤
王彤是表格驱动的单元测试技术的主要发明人,也是可视编程技术的主要设计者。单元测试对于普通人而言,在理解上比较抽象。特别是,一些毫无编程经验、经历的人来说,单元测试就像来自不同“时空”的一个陌生词汇。
在采访王彤之前,无论是对整个单元测试行业的发展情况、相关具体技术能解决行业何种问题,还是王彤先生本人对单元测试如此执着的原因,笔者也有同样的疑惑。带着这样的疑问,笔者和王彤进行了深入的对话、交流。
谈及资深的单元测试从业经历,王彤说,“任何艰难的事情都需要有人去做。单元测试是有需求的,尤其是一些很关键的软件,必须进行单元测试才能保证质量,国内不能在单元测试工具领域完全空白。实际上,业内越来越重视单元测试,一些标准明确规定某些类软件,必须要做单元测试。这些,就是我们这么多年,一直在努力的原因。”
单元测试是生命线
上个世纪60年代,曾经出现过“软件危机”,即软件在开发、升级的过程中,出现不可靠、性能下降、错误率高居不下的情况,73%的软件项目推迟或者失败。期间发生了很多严重的软件危机事件,涉及包括航空、银行等在内的多个高尖精行业。
测试专家Boris Beizer曾说,“软件开发历史上最臭名昭彰的错误都是单元错误,是通过适当的单元测试可以发现的错误。”80年代后,Parasoft、IBM、微软等公司相继推出了自动化测试工具。长期以来,单元测试工具市场上均由国外的企业主导。
凯乐软件之所以涉足单元测试领域,是因为在2002年的一个项目中,凯乐软件团队发现,采用单元测试后的所有产品,质量、效率获得极大的提升,极大地缩短了工程时间。经过短短一年的准备工作,凯乐软件开始研发VISUAL UNIT工具。
直到两年后的2005年,VISUAL UNIT 1.0才正式面世,向市场销售。这期间的研发过程,不断推倒重来,开发、验证、修改,反反复复,艰辛不言而喻。2006年,凯乐软件在广州注册,2007年, VISUAL UNIT推出了2.0版本。
国内的开发、测试工具厂商,存活十年以上的凤毛麟角。谈及过往,王彤显得云淡风轻。他说,“单元测试这类技术发端于国外,国内企业比较少,很难生存,大部分坚持不下去。近两年,大家越来越重视,有一些新企业冒出来。”
众所周知,测试行业大致分为单元测试、集成测试、系统测试。单元测试主要针对开发过程中的代码块进行检测,代码集成之后为集成测试,做出产品后叫做系统测试。
王彤认为,单元测试本身是非常好的技术,软件行业要实现比较大的产能提升,突破口就在单元测试。像敏捷开发,到现在流行的DevOps开发到运维,单元测试都是核心和关键。
经过十几年的发展,国内的单元测试技术已经不比国外差,而在更符合国人的使用习惯或满足特定需求方面,国内工具显然更具优势,另外,国内工具厂商所能提供的技术支持和定制能力,也是国外工具不能相比的。
“国产化”刚刚开始
王彤回想创业初期,团队去客户那里,谈单元测试工具,客户会问是国产的吗?如果是国产的,对方可能心里会打鼓。现在和以前最大的变化是,客户还是会问产品是国产的吗?如果是国产,对方的表情就会轻松很多。
这其中的变化,一方面,国内企业从最初的国外“囫囵吞枣”式的引进,到逐渐本土化,再进行各方面的赶超。另一方面,环境悄然发生了变化,包括国家政策导向,整个政策都在支持,或者要求使用国产工具。
从近期的一些事件,也可以看出,国内愈发重视,包括芯片、操作系统等等在内的自主、可控化。技术、生产线、均要掌握在自己手中,才不会出现,被“卡脖子”的事情发生。单元测试行业也是一样的。
在很多领域,如芯片、操作系统、编译器、链接器,实现国产替代还需要走一段艰难的路程。王彤认为,开发工具、编译器、链接器等领域,真正难的不是技术,而是生态。如果产品没有客户使用,永远不能成熟。生态的建立一定需要一个磨合、交学费的过程。
其实,国内的企业此刻更需要有信心,整体行业需要有自信。王彤团队告诉中国软件网,国产的很多东西要比国外的强,比如,桥梁工程,远远超过国外,我们只有个别领域不如人。很多时候国产产品推进难是因为,国外产品“先入为主”。
不同的编程语言,单元测试的难度不同。Java语言,单元测试相对容易,而C和C++则要难得多。
C和C++语言主要用于底层和关键软件,非常需要单元测试。凯乐软件主要业务针对C和C++语言。2014年,VISUAL UNIT 4.0发布,该版本以表格驱动为代表。
VISUAL UNIT 4.0
谈到凯乐软件VISUAL UNIT工具的技术特点以及优势,王彤自信满满。他说,首先,凯乐的技术降低了难度,有些用户完全没有编程经验,也可以做测试,这在之前是完全不可想象的。以前需要写很多代码才能做测试,现在点点鼠标、填填数据、轻轻松松地实现自动化单元测试。
其次,很多公司之前对测试标准要求比较低,想要达到很高的标准非常难,用了凯乐软件的工具,很容易做到了测试的高标准。第三,在程序员的使用方面,凯乐软件做得比较到位。程序员使用VISUAL UNIT,可以非常高效地完成开发和测试。
王彤强调,测试的时候需要的数据,可以全部在表格中建立、管理,完全不需要写测试代码,包括处理链表、映射表等集合数据,目前可能只有凯乐软件可以做到。
中国软件网了解到,凯乐软件成立以来,在市场上获得诸多认可。2008年至2010年期间,先后获得第十二届中国软件国际博览会“创新奖”,2008年广州市优秀软件产品,首届中国优秀软件创新大赛优秀作品奖,第十三届中国国际软件博览会金奖,并获得国家发明专利授权。
VISUAL UNIT 4.0推出后,其表格驱动等核心技术获得3项国家发明专利。广泛应用于航天航空、航海、兵器、轨道交通、电力、通讯、汽车制造、电器制造等重要行业。随着5G、AI人工智能等新兴技术涌入市场,凯乐软件的客户类型又多了很多,如机器人、自动驾驶等。
VISUAL UNIT 4.0 获得3项国家发明专利
面向星辰大海前进
王彤对中国软件网透露,自己有一个愿景,“让所有需要单元测试的企业,都能把单元测试做起来。凯乐软件甚至有一个目标,希望帮助这些企业提升产能30%。”王彤透露,在技术上提升30%的产能,是完全可以做得到的,但仅仅这一个目标需要大量的精力、时间的投入。
同时,王彤也非常坦诚、诚实地告诉笔者,单元测试行业的困难之处在于,市场的信任度。很多人觉得国外都做不到,为何国内就能做到。国内市场破局的关键在于转变思路、改变固有观念。很多用户曾经尝试过很多次单元测试产品,买了很多国外的工具,然而,却没有做起来,造成了很大的阴影。
所以,即便市场上有了可以完美解决单元测试的工具,很多用户根据以往的使用经验,依然怀疑,甚至觉得根本不可能实现,或者不相信有这样的产品。其实,国内的单元测试软件,从使用习惯、界面、流程、最后的结果报告,都非常适合国情,满足企业个性化需求。
沉浸行业16年,王彤对单元测试软件行业也有着清晰的认识,单元测试面向B端用户。用户数量有限,要求比较高,客户会考虑服务时间的可持续性。毕竟,不如C端市场庞大,不可能依靠融资、跑马圈地。王彤说,单元测试行业需要积累与耐力,必须坐得了冷板凳。如果两三年想做多大,融多少钱,肯定会死掉。因为两三年的时间,对于一个单元测试工具来说,不可能成熟。
同时,王彤也认为,国内单元测试行业远远未饱和,市场还处于刚刚开始的阶段。国内软件企业非常多,单元测试客户群体非常庞大,不愁没有客户。“做好单元测试这件事,本身就有很大的空间”,王彤团队工作人员说。
“我们非常单纯,就是希望把单元测试这件事做好。甚至不需要什么动力,一件事情,不断解决,也是不断收获的过程。”王彤说。采访结束,王彤一再对笔者表示,一定要实话实说,这个行业,是怎样的发展情况,就要怎样的告知大众。
【本文转自中国软件网,作者赵晨希,微信公众号“中国软件网( id: Hapiweb-soft6)”】