Forum Discussion

david_wolff's avatar
david_wolff
New Contributor
12 years ago

UAC dialogs

When I'm recording a test with TestComplete and a UAC (User Account Control) dialog pops up and I confirm it
the action will not be recorded in the test
So the recorded test will always fail at that point
Is it possible to confirm the UAC dialog in a script?
Or is it not possible to test applications with UAC turned on?

1 Reply

  • vajindarladdad's avatar
    vajindarladdad
    Frequent Contributor
    Hi David,

    Please have a look at "Working With TestComplete Under a User Account" topic from the Help file.



    I will make it simpler by copying that text here:

    ____________________________________________________________________




    You must be logged in as administrator in Windows to install TestComplete. However, you can work with TestComplete under any user account. To enable TestComplete to be run on any user account, select the option “Install this application for anyone who uses this computer” during the TestComplete installation.



    Administrators have full access to data and all permissions to files on the computer. If you are working under a user account, operations are limited by permissions set by the administrator. If you start TestComplete when working under a user account, the operations TestComplete will perform are limited by the permissions set for this account. These may be default permissions (for example, the permissions of a user group to which the account belongs), or modified permissions (for example, the administrator may block or allow writing into some folders). Below are some problems you may encounter when working with TestComplete under a user account. We would like to add that you may or may not encounter some of these problems as this depends on the permissions set for your account by your administrator.





    • To record user actions over an application that is running under a different user account, you should launch this application from TestComplete in RunAs mode. Else, you will not be able to record user actions over processes that were created under system or under another user account. This happens due to certain operating system limitations. This is partially applied to administrator accounts as well: even working as an administrator, you may not be able to record user actions over processes running under the System account and over windows of these processes. So, launching in RunAs mode is a requirement.





    • To simulate user actions over applications running under a different user account, you should start this application from TestComplete in RunAs mode.





    • By default, members of the Users group cannot work with processes created by other users. For instance, ordinary users are not allowed to read some process properties. Also, reading from and writing to the memory space of another process is prohibited. So, some of TestComplete’s methods and properties that obtain data stored in windows of other processes, or that set data in windows, may fail to execute.





    • To use TestComplete on a Windows 2000 computer under a user account, the account must have reading and writing permissions for the <Documents and Settings>\All Users folder. The easiest way to achieve this is to add the account to the Power Users or Administrators group.





    • Users may not have write permissions to some folders. For example, by default members of the Users group do not have writing permissions for the Program Files folder. This may cause TestComplete to be unable to store test results, since it automatically saves results to a file when a test run is over. You may encounter this problem, if you installed TestComplete into the default location (Program Files\Automated QA\TestComplete 7) and run one of TestComplete’s samples while working under a user account. When the run is over, TestComplete will be unable to store test results to a file (since this file is located in subfolders of the Program Files folder) and will show an error message.





    • Users may not have permissions for access to some Registry keys. For example, by default members of the Users group cannot write to keys that are located under the HKEY_LOCAL_MACHINE node. So, if your script attempts to write to these keys, it may fail.



      The HKEY_LOCAL_MACHINE node is used for registering COM servers. If your script registers a COM server and you run TestComplete under an ordinary user account, the registration may fail.





    • When restarting the computer with the reboot-and-continue feature, TestComplete stores the account name, password and domain to be used for the automatic logon to the \\HKEY_USERS\{USER_SID}\Microsoft\Windows\CurrentVersion\RunOnce Registry key. TestComplete removes this data from the Registry once it has been launched after the restart. However, if the user account, which is used for the automatic logon, does not have permissions to change this Registry key, the logon parameters remain in the Registry and they will be used next time when somebody uses this account to log into the operating system.





    • To debug VBScript, JScript, C++Script and C#Script code, you may need Launch and Activation and Access permissions for the Machine Debugger Manager's system component. For more information, see Debugging Tests - Overview.





    Note that by default TestComplete launches tested applications under the same account that TestComplete is running under (unless another account is specified in the tested application’s properties). This may affect the functionality of your application, since it may not work correctly under non-administrator accounts. To ensure your application functions properly in this scenario, you should log on as administrator or run TestComplete under an administrator account. On the contrary, if you need to test your application under a specific account, you should configure your tested application for running under this account. For more information, see Testing Applications Running Under Another User Account.