Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Windows version of Linux Desktop Testing Project
C# Java Python Ruby Perl Visual Basic Other
Latest commit ca9b419 @nagappan nagappan Merge pull request #20 from Zitrax/build_installer_2
Added build_installer.bat

Cobra WinLDTP is based on Linux Desktop Testing Project - LDTP works on Windows/Linux/Mac/Solairs/FreeBSD/NetBSD/Palm Source, yes its Cross Platform GUI testing tool. Please share your feedback with us (

  • Linux GUI testing is known to work on GNOME / KDE (QT >= 4.8) / Java Swing / LibreOffice / Mozilla application on all major Linux distribution
  • Windows GUI testing is known to work on application written in .NET / C++ / Java / QT on Windows XP SP3 / Vista SP2 / Windows 7 / Windows 8 development version
  • Mac GUI testing is known to work on OS X Snow Leopard/Lion/Mountain Lion. Where ever ATOMac runs, LDTP should work on it

Verified with Windows XP SP3 / Windows 7 SP1 / Windows 8. Minimum requirement >= .NET3.5 for Windows XP/7. Test scripts can be written in Python / Ruby / Java / C# / VB.NET / PowerShell / Clojure / Perl and it can be extended to other languages.


Download latest Cobra binary from

On Windows XP SP3 make sure you have installed: .NET3.0 and .NET3.5 and KB971513 (KB971513)

.NET restributable package download info -

On Windows 7: Default .NET with the system should work fine

Supported languages to write test script

  • Python >= 2.5
  • Java >= 1.5
  • C# >= 3.5
  • VB.NET
  • Power Shell
  • Ruby >= 1.8.x
  • Perl
  • Clojure

Build and Package Cobra

Compile SetEnvironmentVariable and CobraWinLdtp solutions, place the binary where you have all the dll's, README.txt, License.rtf, before running Wix installer commands. LDTP packages are created with WiX installer -

To create CobraWinLDTP package (Credit: David Connet @VMware): If planing to build package, copy WinLdtpdService.exe to the folder where rest of DLL's exist

"c:\Program Files (x86)\Windows Installer XML v3.5\bin\candle.exe" -pedantic CobraWinLDTP.wxs
"c:\Program Files (x86)\Windows Installer XML v3.5\bin\light.exe" -pedantic -spdb -sadv -dcl:high -ext WixUIExtension -ext WixUtilExtension -dWixUILicenseRtf=License.rtf -out CobraWinLDTP.msi CobraWinLDTP.wixobj

Using Cobra

By default LDTP listens in localhost, to listen in all ports, set environment variable LDTP_LISTEN_ALL_INTERFACE and then run WinLdtpdService.exe as an user with administrator privillage in Windows 7, else you will get exception Access Denied. Other option is: Disable ACL in Control Panel->User Accounts->Change User Account Control settings Other option (Still you need to set LDTP_LISTEN_ALL_INTERFACE), you need to run as administrator: set LDTP_LISTEN_ALL_INTERFACE=1 # To listen on all interface Required for Windows >= 7

netsh http add urlacl url=http://localhost:4118/ user=User
netsh http add urlacl url=http://+:4118/ user=User
netsh http add urlacl url=http://*:4118/ user=User

Other Details

CobraWinLDTP source files are distributed under MIT X11 license. Following files are re-distributed as-is: Microsoft DLL's (Interop.UIAutomationClient.dll, UIAComWrapper.dll, WUIATestLibrary.dll) - - MS-PL license XML RPC .NET library (CookComputing.XmlRpcV2.dll) - - MIT X11 license

CobraWinLDTP works based on Microsoft accessibility layer. To check whether your application is accessibility enabled, download the binary from and verify the same.

Verified with Windows 8 developer edition. Minimum requirement .NET4.0 To compile for Windows 8 environment (You can compile it from Windows 7, Visual studio 2010), but make sure you change target framework as .NET 4.0 for Windows 8 and .NET 3.5 for Windows XP/7 NOTE: Don't select client profile

Windows 8

For Windows 7 the following steps are optional, but its required for Windows 8

netsh http add urlacl url=http://localhost:4118/ user=User
netsh http add urlacl url=http://+:4118/ user=User

Windows Domain

If you run CobraWinLDTP where you have logged in as a domain user

netsh http add urlacl url=http://localhost:4118/ user=DOMAIN\User
netsh http add urlacl url=http://+:4118/ user=DOMAIN\User

For Java compilation

Download commons-codec-1.6.jar, ws-commons-util-1.0.2.jar, xmlrpc-client-3.1.3.jar, xmlrpc-common-3.1.3.jar, commons-logging-1.1.1.jar, commons-logging-adapters-1.1.1.jar, commons-logging-api-1.1.1.jar and place it in ldtp/Java/lib/

Download jar files from this location or any other apache mirror. Make sure you have the version mentioned in the jar or latest

In eclipse its compiled by default. FIXME: Write how to compile from command line

To create Ldtp.jar

cd ldtp\JavaLDTP\bin
jar cvf ..\..\Ldtp.jar * # Note: Tested this on Mac with a forward slash though, haven't created Jar on Windows

To use LDTP Java library:

Include Ldtp.jar file available under ldtp folder in your project

How do I contact LDTP team incase of any help ?

Something went wrong with that request. Please try again.