GUI Record & Replay 有两天主要任务:记录用户的操作、模拟用户的操作。可以用于GUI程序的自动化测试。
Unix/Linux环境下的窗口环境主要是X Window System。
X Window下的GUI Record可以借助 X Record Extension Library来实现。GUI Replay则可以借助 XTEST Extension Library。
X Record提供了API用于监听用户事件。XTest提供了API用于模拟用户输入。基本上一些GUI Record & Play的实现都是利用这两套API来实现的。
除了单纯记录和模拟用户的键盘鼠标事件外,对窗口及组件的查询和管理也是非常有必要或有帮助的。比如也许需要在每次打开程序时调整窗口的初始大小和位置,以保证用户输入事件的准确性。
在 X Window 环境中,这可能需要借助X Window API的帮助。
一些可供参考的想法: