Linux Desktop Testing Project

From Wikipedia, the free encyclopedia
Linux Desktop Testing Project
Developer(s)Emily Chen, Nagappan A., et. al.[1]
Initial releaseJanuary 28, 2005; 17 years ago (2005-01-28)[2]
Stable release
3.5.0 / May 1, 2013; 8 years ago (2013-05-01)[3]
Repositorygithub.com/ldtp/ldtp2
Written inPython, C#[4]
Operating systemLinux, macOS, Windows[5]
TypeAutomated testing
LicenseGNU LGPL[6]
Websiteldtp.freedesktop.org

The Linux Desktop Testing Project (LDTP) is an open-source testing tool that uses computer assistive technology[7] to automate GUIs.[8] The GUI functionality of an application can be tested in Windows, Mac, Linux, Solaris, FreeBSD and embedded environments.[9] The Mac OS X version is called PyATOM,[10] and the Windows version is Cobra.[11]

LDTP can test any accessibility-enabled GNOME application, Mozilla, OpenOffice.org, any Swing-based Java, Qt 4-based and KDE 4.x applications.[12]

LDTP is/was used by the following companies/organizations:[13]

LDTP can be used to remotely test applications.[14][15]

The LDTP is released under the LGPL.

History[]

LDTP version 0.1.0 was released in January 2005 and then showcased and discussed at GUADEC 2005. It was then used at the Google Summer of Code in 2006[16][17] for integration, Evolution automation, and LDTP regression suite under GNOME organization. Then again in 2007,[18][19] it was used by the Mozilla Foundation for Firefox automation and integration.

Example[]

This is an example of how LDTP would test writing in gedit:

#!/usr/bin/env python3

# The standard import stuff.
from ldtp import *
from ooldtp import context as locate
from time import sleep

# Here we open the app.
launchapp("gedit")

# Now we find it and make sure it is open.
gedit_win = locate("*gedit")
gedit_win.waittillguiexist()

# Now we type into gedit.
text_field = gedit_win.getchild("txt1")
text_field.enterstring("G'Day mate!")

# Save a picture to prove we did it.
imagecapture("*gedit", "/tmp/foo.png")

# Quit gedit.
quit = gedit_win.getchild("mnuQuit")
quit.selectmenuitem()

# Close without saving.
dont_save = locate("Question")
dont_save.waittillguiexist()

button = dont_save.getchild("btnClosewithoutSaving")
button.click()

# Wait until gedit is gone.
gedit_win.waittillguinotexist()

Diagram of how LDTP works[]

Diagram of the workings of LDTP
How LDTP works[20]

See also[]

  • List of Linux GUI testing tools
  • Desktop Linux

References[]

  1. ^ "Team Members". ldtp.freedesktop.org. Retrieved 25 December 2017.
  2. ^ "FAQ".
  3. ^ LDTP2 Releases - Github
  4. ^ "Linux Desktop Testing Project". dtp/ldtp2. Retrieved 25 December 2017 – via GitHub.
  5. ^ "ldtp 3.5.0 : Python Pakage Index".
  6. ^ "Download".
  7. ^ "ldtp".
  8. ^ "LDTP 3.0 automates GUI testing on Linux - The H Open: News and Features".
  9. ^ "ldtp".
  10. ^ "pyatom/pyatom - GitHub".
  11. ^ "ldtp/cobra - GitHub".
  12. ^ "ldtp".
  13. ^ "FAQ".
  14. ^ "Executing scripts remotely".
  15. ^ "How to control GNOME apps remotely using LDTP - YouTube". Archived from the original on 2021-12-13.
  16. ^ "SoC".
  17. ^ "SoC06".
  18. ^ "SoC".
  19. ^ "SoC07".
  20. ^ "ldtp-tutorial" (PDF).

External links[]

Retrieved from ""