Linux Desktop Testing Project: Difference between revisions

Content deleted Content added
Cjbayliss (talk | contribs)
m Added a ref
Otbest (talk | contribs)
#suggestededit-add-desc 1.0
Tags: Mobile edit Mobile app edit Android app edit
 
(30 intermediate revisions by 21 users not shown)
Line 1:
{{Short description|Testing tool that uses computer assistive technology}}
<!-- Please do not remove or change this AfD message until the issue is settled -->
{{Article for deletion/dated|page=Linux Desktop Testing Project|timestamp=20140316032909|year=2014|month=March|day=16|substed=yes|help=off}}
<!-- For administrator use only: {{Old AfD multi|page=Linux Desktop Testing Project|date=16 March 2014|result='''keep'''}} -->
<!-- End of AfD message, feel free to edit beyond this point -->
 
{{Infobox software
| name = Linux Desktop Testing Project
| released = {{Start date|2005|1|28|df}}<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/FAQ/ | title=FAQ}}</ref>
| developer = Emily Chen, Nagappan A., et al.<ref>{{cite web|title=Team Members|url=https://ldtp.freedesktop.org/wiki/TeamMembers/|website=ldtp.freedesktop.org|accessdate=25 December 2017}}</ref>
| frequently updated = yes
| programming languagereleased = [[Python{{Start (programmingdate language)|Python]],and [[C (programming language)age|C]], [[C Sharp (programming language)2005|C#]], Other 01|28}}<ref>{{cite web | url=http://wwwldtp.ohlohfreedesktop.netorg/pwiki/FAQ/ldtp | title=The Linux Desktop Testing Project OpenSource Project on OhlohFAQ}}</ref>
| latest release version = 3.5.0
| operating system = [[Linux |Linux]], [[OS X |OS X]], [[Microsoft Windows |Windows]] <ref>{{cite web | url=https://pypi.python.org/pypi/ldtp | title=ldtp 3.5.0 : Python Pakage Index}}</ref>
| latest release date = {{Start date and age|2013|05|01}}<ref>[https://github.com/ldtp/ldtp2/releases LDTP2 Releases] - GitHub</ref>
| repo = {{URL|https://github.com/ldtp/ldtp2}}
| programming language = [[Python (programming language)|Python]], [[C Sharp (programming language)|C#]]<ref>{{cite web|title=Linux Desktop Testing Project|url=https://github.com/ldtp/ldtp2|website=dtp/ldtp2|access-date=25 December 2017 |via=[[GitHub]]}}</ref>
| operating system = [[Linux |Linux]], [[OS X |OS XmacOS]], [[Microsoft Windows |Windows]] <ref>{{cite web | url=https://pypi.python.org/pypi/ldtp | title=ldtp 3.5.0 : Python Pakage Index}}</ref>
| genre = [[Automated testing]]
| statuslicense = Active[[GNU Lesser General Public License|GNU LGPL]]<ref>{{cite web | url=http://wwwldtp.ohlohfreedesktop.netorg/pwiki/Download/ldtp | title=The Linux Desktop Testing Project OpenSource Project on OhlohDownload}}</ref>
| licensewebsite = [[GNU Lesser General Public License|GNU LGPL]] <ref>{{cite web URL| url=httphttps://ldtp.freedesktop.org/wiki/Download/ | title=Download}}</ref>
| website = {{URL|http://ldtp.freedesktop.org/wiki/}}
{{URL|https://github.com/ldtp}}
| working state = Current
}}
 
The '''Linux Desktop Testing Project''' (LDTP) is an [[open source]]a [[testing tool]] that uses uses computer [[Computer accessibility |assistive technology]]<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/ | title=ldtp}}</ref> to automate GUIs[[graphical user interface]] (GUI) testing.<ref>{{cite web |url=http://www.h-online.com/open/news/item/LDTP-3-0-automates-GUI-testing-on-Linux-1660613.html |title=LDTP 3.0 automates GUI testing on Linux - The H Open: News and Features}}</ref> The GUI functionality of an application can be tested in Windows[[Linux]], Mac[[macOS]], Linux[[Windows]], [[Oracle Solaris|Solaris]], [[FreeBSD]], and [[embedded system]] environments.<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/ | title=ldtp}}</ref> The Mac OS XmacOS version is callednamed PyATOM,<ref>{{cite web | url=https://github.com/pyatom/pyatom | title=pyatom/pyatom - GitHub}}</ref>, and the Windows version is Cobra.<ref>{{cite web | url=https://github.com/ldtp/cobra | title=ldtp/cobra - GitHub}}</ref> 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 (programming language)|Java]], [[Qt toolkit(software)|Qt]] 4-based and [[KDE]] 4.x applications.<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/ | title=ldtp}}</ref>
 
LDTP is/was used by the following companies/ and organizations:<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/FAQ/ | title=FAQ}}</ref>:
 
* [[GNOME]]
Line 27 ⟶ 24:
* [[Openoffice.org]]
* [[KDE]]
* [[Novell]]/[[SUSE S.A.|SuSE]]
* [[Access Systems Americas |Palm Source]]
* [[VMware]]
 
LDTP can be used to remotely test applications.<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/Executing_scripts_remotely/ | title=Executing scripts remotely}}</ref><ref>{{cite web | url=httphttps://www.youtube.com/watch?v=ojAN8MktFHE |archive-url=https://ghostarchive.org/varchive/youtube/20211213/ojAN8MktFHE |archive-date=2021-12-13 |url-status=live| title=How to control GNOME apps remotely using LDTP - YouTube}}{{cbignore}}</ref>
 
The LDTP is released under the [[LGPL]].
 
==History==
 
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<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/SoC/ | title=SoC}}</ref><ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/SoC06/ | title=SoC06}}</ref> for [[Tinderbox (software)|Tinderbox]] integration, [[Evolution (software) |Evolution]] automation, and LDTP regression suite under [[GNOME]] organization. Then again in 2007,<ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/SoC/ | title=SoC}}</ref><ref>{{cite web | url=http://ldtp.freedesktop.org/wiki/SoC07/ | title=SoC07}}</ref>, it was used by the Mozilla FondationFoundation for [[Firefox]] automation and [[Tinderbox (software)|Tinderbox]] integration.
 
==Example==
Line 43 ⟶ 38:
This is an example of how LDTP would test writing in [[gedit]]:
 
<syntaxhighlight lang="python">
<nowiki>
#!/usr/bin/pythonenv python3
 
# The standard import stuff.
from ldtp import *
importfrom 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()</nowiki>
</syntaxhighlight>
 
==Diagram of how LDTP works==
== References ==
{{Wide image|Ldtp-workings.svg|700px|How LDTP works<ref>{{cite web |url=http://download.freedesktop.org/ldtp/doc/ldtp-tutorial.pdf |title=ldtp-tutorial}}</ref>|100%|center|alt=Diagram of the workings of LDTP}}
{{Reflist|30em}}
 
== See also ==
{{Portal|Free and open-source software}}
* [[List of Linux GUI testing tools]]
* [[Desktop Linux]]
 
== References ==
{{Reflist|30em}}
 
==External links==
* [http{{Official website|https://ldtp.freedesktop.org Homepage]}}
* [https://web.archive.org/web/20090717224205/http://mago.ubuntu.com/FrontPage Mago] Ubuntu wrapper using LDTP
 
{{Linux}}