涉及到UI的测试是一个噩梦,面多成千的test case,测试者需要按照描述进行UI操作,同时观察响应。这种纯手工的测试方式操作上很容易出错,而且相当耗时,尤其对regression test。
要是能够象用xUnit测试非UI代码一样方便的自动化组织和执行UI测试,那将是多么美妙的事清
以手机开发测试为例,不管是触摸屏方式还是键盘方式的输入方式,用户的操作总是通过硬件产生信号,引发硬件驱动程序,继而通知window system,window system将消息映射到特定窗体的特定widget,然后引发相应的逻辑运算。在这个消息链上,我们可以在任何一点上“插队“来模拟硬件的操作,硬件驱动程序(driver)到Window System是一个比较合理的伏击点,因为涉及到的改变最少,也最简单。
通过模拟driver给Window System发送模拟硬件时间的消息,实现了把用户操作程序话。test case于是可以用程序来表示, 这样大大提高了test case的可维护性,也把测试人员从繁杂的体力劳动中解放出来。
要是能够象用xUnit测试非UI代码一样方便的自动化组织和执行UI测试,那将是多么美妙的事清
以手机开发测试为例,不管是触摸屏方式还是键盘方式的输入方式,用户的操作总是通过硬件产生信号,引发硬件驱动程序,继而通知window system,window system将消息映射到特定窗体的特定widget,然后引发相应的逻辑运算。在这个消息链上,我们可以在任何一点上“插队“来模拟硬件的操作,硬件驱动程序(driver)到Window System是一个比较合理的伏击点,因为涉及到的改变最少,也最简单。
通过模拟driver给Window System发送模拟硬件时间的消息,实现了把用户操作程序话。test case于是可以用程序来表示, 这样大大提高了test case的可维护性,也把测试人员从繁杂的体力劳动中解放出来。