论文部分内容阅读
随着计算机的普及,软件系统已经深入到生活的各个方面,从普通的计算机软件,到银行或超市的终端系统,甚至到手机的软件系统。对软件质量的要求也在不断提高,但现实中软件系统的质量和稳定性却不尽人意,采用有效的软件测试是保证软件质量、提高软件可靠性的重要手段。现代化的软件大都是图形界面的,图形界面使计算机系统变得容易使用,但这也给测试带来了极大的挑战。
使用自动化的测试工具能够提高测试的效率,是一种重要的测试手段。然而,自动化测试工具的价格大都较为昂贵,且大都为国外的产品。因此,自主开发一套自动化GUI测试工具是有意义的。
录制/回放是大多数现代GUI自动化测试工具采用的模式,我们开发的功能测试工具也是采用这种模式。开发的功能测试工具能对传统的Windows应用程序及.NET应用程序进行功能测试。在对传统的Windows应用程序进行录制/回放时,主要用到了Active Accessibility、Windows的消息机制和Windows钩子等技术,通过Active Accessibility中的WinEvens来记录用户的动作,对于非标准控件,则直接记录用户在非标准控件上进行的鼠标键盘操作。对于.NET应用程序,主要通过.NET的反射技术来实现录制&回放。本文讨论的测试工具以简洁高效地方式来标识查找控件。以C#作为脚本语言,可以开发出功能强大的脚本。该工具还提供数据驱动的测试方式,即可以将测试数据和脚本分离,这样,同一个用例,可以用不同条件下的数据对应用程序进行测试。