序一
我与作者相识在2015年,当时他已参与航天地面测试系统开发多年,是公司地面测试系统的资深技术人员。后来,作者另立门户,开始创业,而我也南下深圳开始新的征程。但这么多年来,我们一直保持沟通,时常还交流一些技术问题。
2022年8月初,接到作者的消息让我为他的书写推荐序言。此时,我刚刚带领团队完成公司一个核心产品自动化测试系统的开发,虽属巧合,却也折射出测试在工程研制中的重要性,于是我欣然答应。
本书介绍了基于C++和Qt的测试系统框架,它是作者十多年的航天地面测试系统开发经验的结晶。这些年,作者一直深耕航天地面测试领域,身影遍及北京、上海、西安、长沙等地,参与过大到载人航天分系统的测试,小到微纳卫星的测试。作者是一个善于学习和总结的人,我清晰地记得当初他在从MFC到Qt的转换过程中,像发现新大陆一样在很短的时间里就掌握了Qt的开发,并对Qt的自定义插件功能大加赞赏,称其为地面测试软件开发者的福音。
众所周知,安全、稳定和可靠对航天技术至关重要,因此航天地面测试领域采用的软件技术都经过长时间的验证。20年前,MFC或Delphi是航天软件领域中为数不多的选择;而近10年来,Qt快速发展,以其便捷的UI(User Interface,用户界面)开发模式和稳定、可靠的特点,一在航天软件领域中崭露头角就立刻广受欢迎。本书站在一个较高的视角,先将测试系统的需求进行分解,然后投射到Qt开发的功能模块上,既有设计模式、架构设计的内容,又有手把手教你如何进行技术选型的章节。
本书对于测试系统开发过程中经常碰到的问题还提供了参考答案。本书虽立足于通用测试系统的开发,但又远不止于此,还包含了作者对通用测试系统开发理念的独特理解,就像把一个复杂的测试系统一一拆解,展现给读者。书中的理论、概念、实践和方法易懂易学,对测试系统开发从业者具有方法论和实践意义的指导作用。让我觉得难能可贵的是,书中明确将用户界面友好的观点提到很高的高度。
同时,书中也对测试系统的未来发展保持关注和跟进,是一本值得一读的好书。
孙守贤
作者的老同事