Linux Desktop Testing Project | |
Developer: | Emily Chen, Nagappan A., et al.[1] |
Released: | [2] |
Latest Release Version: | 3.5.0 |
Latest Release Date: | [3] |
Programming Language: | Python, C#[4] |
Operating System: | Linux, macOS, Windows[5] |
Genre: | Automated testing |
License: | GNU LGPL[6] |
The Linux Desktop Testing Project (LDTP) is a testing tool that uses computer assistive technology[7] to automate graphical user interface (GUI) testing.[8] The GUI functionality of an application can be tested in Linux, macOS, Windows, Solaris, FreeBSD, and embedded system environments.[9] The macOS version is named PyATOM,[10] and the Windows version is Cobra.[11] The LDTP is released as free and open-source software under the GNU Lesser General Public License (LGPL).
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 and organizations:[13]
LDTP can be used to remotely test applications.[14] [15]
LDTP version 0.1.0 was released in January 2005 and then showcased and discussed at GNOME Users And Developers European Conference (GUADEC) 2005. It was then used at the Google Summer of Code in 2006[16] [17] for Tinderbox 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 Tinderbox integration.
This is an example of how LDTP would test writing in gedit:
from ldtp import *from ooldtp import context as locatefrom time import sleep
launchapp("gedit")
gedit_win = locate("*gedit")gedit_win.waittillguiexist
text_field = gedit_win.getchild("txt1")text_field.enterstring("G'Day mate!")
imagecapture("*gedit", "/tmp/foo.png")
quit = gedit_win.getchild("mnuQuit")quit.selectmenuitem
dont_save = locate("Question")dont_save.waittillguiexist
button = dont_save.getchild("btnClosewithoutSaving")button.click
gedit_win.waittillguinotexist