论文标题

通过双重化测试

Testing by Dualization

论文作者

Li, Yishuai

论文摘要

软件工程需要严格的测试以保证产品的质量。功能正确性的语义测试受到行为无确定性的挑战,这使得测试人员难以编写和推理。 本文提出了一种基于语言的技术来测试交互式系统。我提出了一种理论,用于指定和验证非确定行为,并保证健全性和正确性。然后,我将理论应用于测试实践,并展示如何将规范推导到交互式测试仪程序中。我还引入了一种语言设计,用于生成测试输入,该输入可以有效地检测和再现无效的行为。 我通过指定和测试现实世界系统(例如Web服务器和文件同步器)来评估该方法,从而证明了派生的测试人员在规范和实现之间找到分歧的能力。

Software engineering requires rigorous testing to guarantee the product's quality. Semantic testing of functional correctness is challenged by nondeterminism in behavior, which makes testers difficult to write and reason about. This thesis presents a language-based technique for testing interactive systems. I propose a theory for specifying and validating nondeterministic behaviors, with guaranteed soundness and correctness. I then apply the theory to testing practices, and show how to derive specifications into interactive tester programs. I also introduce a language design for producing test inputs that can effectively detect and reproduce invalid behaviors. I evaluate the methodology by specifying and testing real-world systems such as web servers and file synchronizers, demonstrating the derived testers' ability to find disagreements between the specification and the implementation.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源