Developer(s) | Emily Chen, Nagappan A., et al. [1] |
---|---|
Initial release | January 28, 2005 [2] |
Stable release | 3.5.0 / May 1, 2013 [3] |
Repository | github |
Written in | Python, C# [4] |
Operating system | Linux, macOS, Windows [5] |
Type | Automated testing |
License | GNU LGPL [6] |
Website | ldtp |
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 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:
#!/usr/bin/env python3# The standard import stuff.fromldtpimport*fromooldtpimportcontextaslocatefromtimeimportsleep# 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()
Qt is cross-platform application development framework for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems with little or no change in the underlying codebase while still being a native application with native capabilities and speed.
In computing, a desktop environment (DE) is an implementation of the desktop metaphor made of a bundle of programs running on top of a computer operating system that share a common graphical user interface (GUI), sometimes described as a graphical shell. The desktop environment was seen mostly on personal computers until the rise of mobile computing. Desktop GUIs help the user to easily access and edit files, while they usually do not provide access to all of the features found in the underlying operating system. Instead, the traditional command-line interface (CLI) is still used when full control over the operating system is required.
gedit is a text editor designed for the GNOME desktop environment. It was GNOME's default text editor and part of the GNOME Core Applications until GNOME version 42 in March 2022, which changed the default text editor to GNOME Text Editor. Designed as a general-purpose text editor, gedit emphasizes simplicity and ease of use, with a clean and simple GUI, according to the philosophy of the GNOME project. It includes tools for editing source code and structured text such as markup languages.
Jonathan Edward James Bacon is a writer and software engineer, originally from the United Kingdom, but now based in California. He works as a consultant on community strategy.
Scanner Access Now Easy (SANE) is an open-source application programming interface (API) that provides standardized access to any raster image scanner hardware. The SANE API is public domain. It is commonly used on Linux.
Free and Open source Software Developers' European Meeting (FOSDEM) is a non-commercial, volunteer-organized European event centered on free and open-source software development. It is aimed at developers and anyone interested in the free and open-source software movement. It aims to enable developers to meet and to promote the awareness and use of free and open-source software.
QCAD is a computer-aided design (CAD) software application for 2D design and drafting. It is available for Linux, Apple macOS, Unix and Microsoft Windows. The QCAD GUI is based on the Qt framework.
A desktop environment is a collection of software designed to give functionality and a certain look and feel to an operating system.
Avant Window Navigator is a dock-like bar for Linux, which sits on an edge of a user's screen and tracks open windows. Instead of representing open windows as buttons or segments on a bar, it uses large icons on a translucent background to increase readability and add visual appeal. The program was created by Neil J. Patel.
GTK is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the Wayland and X11 windowing systems.
GNOME Shell is the graphical shell of the GNOME desktop environment starting with version 3, which was released on April 6, 2011. It provides basic functions like launching applications and switching between windows, and is also a widget engine. GNOME Shell replaced GNOME Panel and some ancillary components of GNOME 2.
LightDM is a free and open-source X display manager that aims to be lightweight, fast, extensible and multi-desktop. It can use various front-ends to draw the user interface, also called Greeters. It also supports Wayland.
mpv is free and open-source media player software based on MPlayer, mplayer2 and FFmpeg. It runs on several operating systems, including Unix-like operating systems and Microsoft Windows, along with having an Android port called mpv-android. It is cross-platform, running on ARM, PowerPC, x86/IA-32, x86-64, and MIPS architecture.
Pluma is a fork of gedit 2 and the default text editor of the MATE desktop environment used in Linux distributions. It extends the basic functionality with other features and plugins.
The KDE Gear is a set of applications and supporting libraries that are developed by the KDE community, primarily used on Linux-based operating systems but mostly multiplatform, and released on a common release schedule.
AV1 Image File Format (AVIF) is an open, royalty-free image file format specification for storing images or image sequences compressed with AV1 in the HEIF container format. It competes with HEIC, which uses the same container format built upon ISOBMFF, but HEVC for compression. Version 1.0.0 of the AVIF specification was finalized in February 2019.
Fyne is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs) across desktop and mobile platforms. It is designed to enable developers to build applications that run on multiple desktop and mobile platforms/versions from a single code base. Fyne uses OpenGL to provide cross-platform graphics. It is inspired by the principles of Material Design to create applications that look and behave consistently across all platforms. It is licensed under the terms of the 3-clause BSD License, supporting the creation of free and proprietary applications. In December 2019 Fyne became the most popular GUI toolkit for Go, by GitHub star count and in early February 2020 it was trending as #1 project in GitHub trending ranks.
GNOME Terminator is a free and open-source terminal emulator for Linux programmed in Python, licensed under GPL-2.0-only. The goal of the project is to produce a useful tool for arranging terminals. It is inspired by programs such as gnome-multi-term, QuadKonsole, etc. In that the main focus is arranging terminals in grids. Terminator packages exist for Arch, Debian/Ubuntu, Fedora, OpenSUSE, Gentoo, Snap, FreeBSD, OpenBSD. In 2017 took second place in voting at opensource.com, after Gnome Terminal.
GNOME Text Editor is the default text editor for the GNOME desktop environment. The program is a free and open-source graphical text editor included as part of the GNOME Core Applications. GNOME Text Editor has been the default text editor for GNOME since GNOME version 42, which was released in March 2022. GNOME Text Editor replaces gedit as GNOME's default text editor, and was created due to the GNOME developers' intention of having all of their programs comply with GNOME's Human interface guidelines (HIG). The adherence to their HIG is done by using the libadwaita library, and making gedit compliant with that would have required an extensive rewrite of gedit's code, so a new program was written from scratch instead.