一句话:回顾系统测试中自动化规约模型的演进,指出规格缺失、系统复杂化等假设崩塌,并展望新工具驱动的自动化系统测试未来。
系统测试数十年来依赖形式化模型来支撑自动化,这些模型用于描述程序输入、系统可配置性以及动作序列的覆盖,并成为自动程序修复与自适应系统的基础。然而,随着自动化软件工程进入下一代,若干长期假设正在失效:规约可能不再可得或不够完整,系统日益复杂且难以定义,竞争性目标不断增多,导致形式化规约与测试更加困难。本主题演讲从时间与空间两个维度回顾系统测试中模型与规约的演进,并展望如何利用新的强大工具缓解上述挑战,勾勒自动化系统测试的新未来。
Software testing from the system perspective has been the cornerstone of testing for decades, ensuring software satisfies customer requirements, is efficient, and dependable. And our community has spent significant effort formalizing and leveraging models that support this goal. Strong models lead to better testing and have provided the foundations for automated program repair and self-adaptation. As we have traveled through time we have utilized different types of models for specifying program inputs, system configurability, and for coverage of sequences of actions; all driven by the assumption that we can build those models. However, as we move into the next generation of automated software engineering, some of our long-held assumptions are breaking. Specifications may no longer be available or are less complete, our systems are becoming more complex and harder to define, and we have an increasing number of competing objectives. This is making our software more difficult to formally specify, and hence to test. Yet, we also have new powerful tools at hand that can help mitigate these challenges. In this talk I will look back and forward across space and time with an eye towards a new future of automated system testing.