求助能否增加一个判断光标所在位置的检查点?
我刚接触Winrunner不久,请教各位,能否增加一个可以判断光标所在位置的检查点。我要测试的功能为:
例如:添加一个用户,输入的用户名为空时,系统出现错误提示后,“确认”此提示后,光标的位置应停留在用户名这个输入框中。
能否增加判断此光标位置的检查点呢? 从软件的易用性来说,光标的位置不是很重要,重要的是你确认后,是不是回到你要的那个窗口。不知道我这样的理解是不是正确,或者你要测试的软件在这方面有特殊的要求。如果是测试是不是在某个窗口是很好解决的,光标相对麻烦很多 呵可。。懂了。嗯的。对。因为我们要测试的界面都在同一窗口上,所以我就想着测光标的位置。若光标比较麻烦的话,就暂不考虑了。
谢谢啦~~~~嘿嘿。。
我第一次发帖子呢。。。嘻嘻。。。 试了下GUI Checkpoint 的Focus属性好像没什么作用?(或许我的方法不对也可能)
所以基本上是不好实现的,实在需要可以这样:
Windows API里没找到返回当前窗口焦点的函数,不过CWnd类是有的,所以可以自己写个DLL封装个函数,把当前窗口的标题传进去,用FindWindow找到窗口获取HWND,或者用win_get_info("...", "handle",..);返回窗口的句柄(可能可行),有了句柄,再用CWnd的函数FromHandle得到窗口指针,这样,就可以调用CWnd的函数GetFocus来获取当前的焦点了,也可以通过SetFocus改变窗口的焦点。差不多下面的语句:
HWND hWnd = ::FindWindow(NULL, "Your Dlg Title"); // 第二个参数为标题
CWnd* pWnd = FromHandle(hWnd);
CWnd* pCurWnd = pWnd->GetFocus(); // 获取当前的焦点所在的窗口
pCurWnd->GetWindowText(cs);
TRACE(cs);
页:
[1]