Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

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 (


GUI testing is known to work on all major Linux distribution with:

  • KDE (Qt >= 4.8)
  • Java Swing
  • LibreOffice
  • Mozilla application


GUI testing is known to work on (minimum requirement >= .NET3.5)

  • Windows XP SP3
  • Vista SP2
  • Windows 7
  • Windows 8
  • Windows 8.1
  • Windows 10

with application written in

  • .NET
  • C++ (MFC, WPF)
  • Java Swing
  • Qt >= 4.8


GUI testing is known to work on

  • OS X Snow Leopard
  • OS X Lion
  • OS X Mountain Lion

Where ever ATOMac runs, LDTP should work on it

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

Java library compilation

  1. Create directory CobraWinLDTP\ldtp\Java\lib\
  2. Download and place in this directory next files:

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

  1. For build Ldtp.jar:
set LIBS_PATH=CobraWinLDTP\ldtp\Java\lib
set SRC_PATH=CobraWinLDTP\ldtp\Java\src
javac -cp .;%LIBS_PATH%\*; %SRC_PATH%\com\cobra\ldtp\*.java
jar cvf ..\..\ldtp.jar com\cobra\ldtp\*.class

To use LDTP Java library just include Ldtp.jar file available under ldtp folder in your project.

How do I contact LDTP team incase of any help ?