Scheduled execution of Testcomplete fails
With TestComplete 8 we have a script that is scheduled to start 06:00 every morning by t开发者_如何转开发his line:
"C:\Program Files\Automated QA\TestComplete 8\Bin\TestComplete.exe" "C:\Attracs\TestComplete\Attracs\AttracsTEST\AttracsTESTProject.mds" /r /e /SilentMode
The problem is that this often fails. The log remark says: An error occurred while calling the "Keys" method or property of the "TcxCustomInnerTextEdit" object. The object or one of its parent objects does not exist.
If I connect to the computer with Remote Desktop and manually run the script it works fine. There is no screensaver active and the power scheme is set to never sleep.
I have noticed that Testcomplete needs a handle to GUI (the screen is visible) or the script got this kind of errors. Could it be that when it starts it have no handle to the GUI components because they aren't visible ?
From the helps Running Tests via Remote desktop:
However, if you minimize the Remote Desktop window (the window that display the remote computer’s desktop), the operating system switches the remote session to the GUI-less mode and does not display windows and controls. As a result, TestComplete (or TestExecute) is unable to interact with the tested application’s GUI, as the GUI does not actually exist in this case and your automated GUI test fails.
To avoid this issue, you can keep the Remote Desktop window visible during the test run, but this may be inconvenient as it occupies some part or even your entire screen and leaves less space for you to run your local applications.
Any solution for this?
There is a way to enable the console connection in Windows to be active at all times, which allows TestComplete to work without actually connecting with RDP.
From: Running Tests in Minimized Remote Desktop Windows
Log in to the computer from which you connect to remote computers.
Close all open Remote Desktop sessions.
Launch the Registry editor (Regedit.exe).
If you have a 32-bit operating system:
Locate the HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\ Registry key if you want to change the connection settings for the current user only.
-- or --
Locate the HKEY_LOCAL_MACHINE\Software\Microsoft\Terminal Server Client\ Registry key if you want to change the connection settings for all the users.
Create a new DWORD value in this key and name it RemoteDesktop_SuppressWhenMinimized.
Specify 2 as the value data.
If you have a 64-bit operating system:
Locate the HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Terminal Server Client\ Registry key if you want to change the connection settings for the current user only.
-- or --
Locate the HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Terminal Server Client\ Registry key if you want to change the connection settings for all the users.
Add the RemoteDesktop_SuppressWhenMinimized value to the key.
I found this page http://www.automatedqa.com/support/viewarticle/12567/viewarticle.aspx?aid=12567
It seems that a solution could be that running TestComplete in a Virtual machine.
/Roland
To run any UI test, the UI needs to be available. Hence, the machine should be unlocked so that TestComplete can perform user actions like mouse click, keys, etc to work.
However, if you have non UI test like running Web Services then it will work.
精彩评论