4 将文本识别作为你的最后一个选择
文本识别将占用大量的内存,而且还不稳定,同时在不同的操作系统可能会出现不同的结果。所以只有在没有其他的方法得到对象的信息的情况下才使用这种方式。不幸的是,这种情况经常发生,特别是当有对象不能被识别的时候。在下面的例子中,我们假设“Assign Date”是类:edit。
错误的示范:
obj_get_text("Assign Date", text);
正确的示范:
edit_get_text("Assign Date",text);
5 不要使用额外的wait语句;在需要等待的时候,尽量使用同步函数 错误的示范:
wait(40);
正确的示范:
statusbar_wait_info("Status Bar","value","Sites processed = 20",40);
6 不要将report_msg作为tl_step的替代
在寻找一个错误的原因的时候,没有人愿意看测试脚本中的每一行语句的测试结果。如果测试结果中不是红就是绿的话,就更加清晰明了了。所以使用tl_step标识失败的步骤还是挺不错的。
错误的示范:
if(win_exists("Active Information Manager",1) == 0) { set_window("Active Information Manager", 1); obj_get_text("AfxWnd42", text); my_gui_checkpoint(text,"AIM.log"); } else report_msg("AIM failure! Window absent at startup"); |
正确的示范:
if(win_exists("Active Information Manager",1) == 0) { set_window("Active Information Manager", 1); obj_get_text("AfxWnd42", text); my_gui_checkpoint(text,"AIM.log"); } else tl_step("AimReportRuns",FAIL,"AIM window absent at startup"); |
7 通过使用正则表达式避免将多个窗口实例放在一个gui map文件中
8 添加注释以增强脚本的可读性 #Please add comments