python的GUI测试工具---autoItX
autoItX是autoit v3的dll 版本.它提供autoit的子集,使用activex/com 和dll接口.意
思就是你可以添加类autoit的特片到你喜欢的脚本语言和程序语言当中.像vb,vc,c++,c,
delphi,vbscript等支持dll的语言.
使用com接口:
在使用com接口之前要先注册autoitx.方法是:
打开命令提示符;将目录设置为包含autoitx3.dll的目录;输入regsvr32.exe autoitx3.dll然
后回车.即可。autoItx控件的名称是autoItx3.control。
一个使用vbscript调用运行方法的例子:
Set oAutoIt = WScript.CreateObject("AutoItX3.Control")
oAutoIt.Run("notepad.exe")
把 autoit提供 AutoItX3.dll 文件复制到 window目录然后注册一下
[code]regsvr32.exe AutoItX3.dll [/code]
[code]
from win32com.client import Dispatch
def enter_game():
try:
AutoItX = Dispatch( "AutoItX3.Control" )
except :
print >> sys.stderr, 'Load Dll False'
# Block All Input
AutoItX.BlockInput( 1 )
AutoItX.Sleep( 20000 )
if AutoItX.WinActivate( GAME_WINDOW_TITLE, '' ):
pass
else:
if AutoItX.WinWaitActive( GAME_WINDOW_TITLE, '', 8 ):
pass
else:
# Unblock input
AutoItX.BlockInput( 0 )
return False
AutoItX.WinSetTitle( GAME_WINDOW_TITLE, '', _pre_title ) AutoItX.WinSetState( _pre_title, '', AutoItX.SW_MAXIMIZE ) AutoItX.Sleep( 5000 ) AutoItX.MouseMove( 462, 396, 10 ) AutoItX.MouseClick( "left" ) AutoItX.Sleep( 1000 ) AutoItX.Send( GAME_ACCT_NAME ) AutoItX.Sleep( 1000 ) AutoItX.MouseMove ( 462, 472, 10 ) AutoItX.MouseClick( "left" ) AutoItX.Sleep( 1000 ) AutoItX.Send( GAME_ACCT_PASS ) AutoItX.Send( "{ENTER}" ) AutoItX.Sleep( 10000 ) # Unblock input AutoItX.BlockInput( 0 ) return True