Can codedUITest co-exist with older UIAutomation APIs


  • I'm using the UIAutomation APIs for accessibility and I'm finding  it difficult to mix CUIT and UnitTest using UIAutomation APIs.

    It seems as if Microsoft stopped supporting the UIAutomation APIS such as UIAutomationClentProviders , UIAutomationClient and UIAutomationTypes.

    I'm in a project in which I cannot use CUIT unless I can make it work without having to install Visual Studio in slave test machines.  Reason why I'm trying to use the older UIAutomation APIs with XUnit.

    Does anyone have a clue as whether or not I can continue using the UIAutomation APIs mentioned above for automating the latest WPF developed application.

    Some sound advice is appreciated if you still using those same APIs.


    Thursday, December 29, 2016 9:33 PM


  • I did some test in this direction when developing FlaUI which supports the old managed UIA2 and the interop based newer UIA3. There I found out that a "client process" somehow seems to be modified as soon as one of the UIA client is loaded into it. For example, I created the inspect application FlaUInspect and wanted to show UIA2 on one side and UIA3 on the other side. Unfortunately as soon as UIA2 was loaded all the results (even when using UIA3) looked strictly like they were called from UIA2. So for me it was not possible to use UIA2 and UIA3 in the same process and therefore I think mixing multiple UIA versions in the same test-processes does not work correctly.
    • Edited by Roemeeeer Tuesday, January 3, 2017 4:46 PM
    • Marked as answer by Highlander4 Friday, January 6, 2017 2:43 AM
    Tuesday, January 3, 2017 4:45 PM