Eggplant Functional

Last updated

Eggplant Functional
Developer(s) eggplant
Operating system Windows, Linux, OS X (test controller); any system with VNC connection or able to be accessed via RDP (system under test).
Type Test automation, System Automation
License Proprietary
Website www.testplant.com   OOjs UI icon edit-ltr-progressive.svg

Eggplant Functional is a black-box graphical user interface (GUI) test automation tool. It was developed in Boulder, Colorado, by Doug Simons, Jonathan Gillaspie, and John McIntosh.[ citation needed ] The software was developed by Redstone Software (a subsidiary of Gresham Computing PLC) starting in 2002. Redstone was acquired on 2 September 2008 by a UK-based company called Eggplant (formerly Testplant). [1] [2]

Contents

Approach

Eggplant Functional uses a two-system model consisting of a controller machine, where scripts are authored and executed, and a system under test (SUT), which may run a VNC server. Eggplant Functional can connect to the VNC server via its built-in viewer via TCP/IP or to a system that supports Remote Desktop Protocol (RDP). [3] Any system with a VNC server can be a SUT. Originally Mac-only, the controller environment/IDE is now available on Linux [4] and Windows using GNUstep. [5]

The feature called SenseTalk allows for manual script creation or can be used in conjunction with an "assisted scripting" mode, which means that the scripter teaches Eggplant Functional to navigate a system and verify a set of test steps. The "Turbo Capture" feature facilitates the image capture process and generates SenseTalk code based on the actions executed. [6]

In 2011, Eggplant released Eggplant Functional v11, which integrated an Optical Character Recognition (OCR) engine. It is compatible with the Mac, Linux and Windows versions. [7]

Also in 2011, Eggplant was granted a US Patent, [8] and launched a mobile testing solution. [9]

In 2013, Eggplant Functional was localized in Chinese. [10]

Product

Eggplant Functional uses intelligent image recognition algorithms to "see" the display screen of the computer being tested. For this, the software secured a US patent for its "method for monitoring a graphical user interface on a second computer display from a first computer" [11] for its GUI testing tool. Human attention is also not needed with this feature. This brought it to the attention of UK Trade & Investment, specifically its defense and security arm, the DSO. [12]

Eggplant Functional can be run from Mac, Windows, or Linux to test any platform, technology, or browser. It can be used for mobile testing, cross-platform testing, rich internet application testing, and performance testing. The company also offers a free trial download of Eggplant Functional. [13]

Version 11 added the integration of the OCR engine and Mac OS X Lion Support. [14] Version 12 included an Eggplant Functional user interface redesign, consolidating the suite interface and scaling search which allows for testing across different sizes of screens with the same image. Version 14 added database integration via ODBC, the release of eggOn VNC for Android, and introduced the Image Update Tools for tweaking images and retraining scripts. Version 15 introduced Tables for keyword-driven testing and Turbo Capture for script recording. It also added the ability to push an application to a mobile device for installation and added a VNC server for Android devices that are built into Eggplant Functional and automatically pushed to the Android device when a connection is first made. [15] This new VNC server for Android allows the testing of the Android smartwatch. [16]

Integration

Eggplant has created integration plug-ins for some of the most popular continuous integration and ALM tools. These are collectively referred to as Eggplant Integrations. [17]

Scripts can also be written in other languages to call out to SenseTalk commands and utilize Eggplant Functional's image-based searching using eggDrive. [23]

Related Research Articles

<span class="mw-page-title-main">Graphical user interface</span> User interface allowing interaction through graphical icons and visual indicators

A graphical user interface, or GUI, is a form of user interface that allows users to interact with electronic devices through graphical icons and visual indicators such as secondary notation. In many applications, GUIs are used instead of text-based UIs, which are based on typed command labels or text navigation. GUIs were introduced in reaction to the perceived steep learning curve of command-line interfaces (CLIs), which require commands to be typed on a computer keyboard.

<span class="mw-page-title-main">X Window System</span> Windowing system for bitmap displays on UNIX-like systems

The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

FileMaker is a cross-platform relational database application developed by Claris International, a subsidiary of Apple Inc. It integrates a database engine with a graphical user interface (GUI) and security features, allowing users to visually modify a database. Versions for desktops, servers, iOS and web-delivery have been released.

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language, also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations. VPLs are generally the basis of Low-code development platforms.

<span class="mw-page-title-main">ClamAV</span> Open-source antivirus software

ClamAV (antivirus) is a free software, cross-platform antimalware toolkit able to detect many types of malware, including viruses. It was developed for Unix and has third party versions available for AIX, BSD, HP-UX, Linux, macOS, OpenVMS, OSF (Tru64), Solaris and Haiku. As of version 0.97.5, ClamAV builds and runs on Microsoft Windows. Both ClamAV and its updates are made available free of charge. One of its main uses is on mail servers as a server-side email virus scanner.

Remote administration refers to any method of controlling a computer or other Internet-connected device, such as a smartphone, from a remote location. There are many commercially available and free-to-use software that make remote administration easy to set up and use. Remote administration is often used when it's difficult or impractical to be physically near a system in order to use it or troubleshoot it. Many server administrators also use remote administration to control the servers around the world at remote locations. It is also used by companies and corporations to improve overall productivity as well as promote remote work. It may also refer to both legal and illegal remote administration.

<span class="mw-page-title-main">Metasploit</span> Computer security testing tool

The Metasploit Project is a computer security project that provides information about security vulnerabilities and aids in penetration testing and IDS signature development. It is owned by Boston, Massachusetts-based security company Rapid7.

Mobile app development is the act or process by which a mobile app is developed for one or more mobile devices, which can include personal digital assistants (PDA), enterprise digital assistants (EDA), or mobile phones. Such software applications are specifically designed to run on mobile devices, taking numerous hardware constraints into consideration. Common constraints include CPU architecture and speeds, available memory (RAM), limited data storage capacities, and considerable variation in displays and input methods. These applications can be pre-installed on phones during manufacturing or delivered as web applications, using server-side or client-side processing to provide an "application-like" experience within a web browser.

<span class="mw-page-title-main">Linux</span> Family of Unix-like operating systems

Linux is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution (distro), which includes the kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses and recommends the name "GNU/Linux" to emphasize the use and importance of GNU software in many distributions, causing some controversy.

<span class="mw-page-title-main">Adobe AIR</span> Cross-platform runtime system for building rich web applications

Adobe AIR is a cross-platform runtime system currently developed by Harman International, in collaboration with Adobe Inc., for building desktop applications and mobile applications, programmed using Adobe Animate, ActionScript, and optionally Apache Flex. It was originally released in 2008. The runtime supports installable applications on Windows, macOS, and mobile operating systems, including Android, iOS, and BlackBerry Tablet OS.

A home server is a computing server located in a private computing residence providing services to other devices inside or outside the household through a home network or the Internet. Such services may include file and printer serving, media center serving, home automation control, web serving, web caching, file sharing and synchronization, video surveillance and digital video recorder, calendar and contact sharing and synchronization, account authentication, and backup services. In the recent times, it has become very common to run literally hundreds of applications as containers, isolated from the host operating system.

This page is a comparison of notable remote desktop software available for various platforms.

Comparison of the Java and .NET platforms.

A software widget is a relatively simple and easy-to-use software application or component made for one or more different software platforms.

<span class="mw-page-title-main">Qt Creator</span> QT development environment

Qt Creator is a cross-platform C++, JavaScript, Python and QML integrated development environment (IDE) which simplifies GUI application development. It is part of the SDK for the Qt GUI application development framework and uses the Qt API, which encapsulates host OS GUI function calls. It includes a visual debugger and an integrated WYSIWYG GUI layout and forms designer. The editor has features such as syntax highlighting and autocompletion. Qt Creator uses the C++ compiler from the GNU Compiler Collection on Linux. On Windows it can use MinGW or MSVC with the default install and can also use Microsoft Console Debugger when compiled from source code. Clang is also supported.

<span class="mw-page-title-main">MIT App Inventor</span> Web application development environment

MIT App Inventor is a high-level block-based visual programming language, originally built by Google and now maintained by the Massachusetts Institute of Technology. It allows newcomers to create computer applications for two operating systems: Android and iOS, which, as of 25 September 2023, is in beta testing. It is free and open-source released under dual licensing: a Creative Commons Attribution ShareAlike 3.0 Unported license and an Apache License 2.0 for the source code. Its target is primarily children and students studying computer programming, similar to Scratch.

Besides the Linux distributions designed for general-purpose use on desktops and servers, distributions may be specialized for different purposes including computer architecture support, embedded systems, stability, security, localization to a specific region or language, targeting of specific user groups, support for real-time applications, or commitment to a given desktop environment. Furthermore, some distributions deliberately include only free software. As of 2015, over four hundred Linux distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.

Comparison of user features of operating systems refers to a comparison of the general user features of major operating systems in a narrative format. It does not encompass a full exhaustive comparison or description of all technical details of all operating systems. It is a comparison of basic roles and the most prominent features. It also includes the most important features of the operating system's origins, historical development, and role.

References

  1. "Testplant Announces the Acquisition of NCC Group's Web Performance Division and the Re-Branding of the Combined Company to Eggplant". www.businesswire.com. 28 March 2018. Retrieved 5 April 2024.
  2. Barron, Jenna (28 March 2018). "Testplant rebrands itself after acquiring NCC Group's Web Performance Division". SD Times. Retrieved 5 April 2024.
  3. "Creating Connections to SUTs".
  4. "Launch of Eggplant for Linux: new version of world-leading test tool".
  5. "Launch of Eggplant for Windows: latest version of world-leading universal test tool".[ permanent dead link ]
  6. "Creating Scripts with Eggplant Functional".
  7. ""Newswire Today", TestPlant Updates eggPlant with OCR and Support for Mac OS X Lion,07/26/2011". Newswiretoday.com. 26 July 2011. Retrieved 6 September 2011.
  8. "London tech company granted US patent for new interface tool". Archived from the original on 22 June 2015. Retrieved 22 June 2015.
  9. ""BloomBerg Businessweek", TestPlant Limited Launches Eggplant Mobile Testing Solution,02/14/2011". Investing.businessweek.com. 14 February 2011. Archived from the original on 15 October 2012. Retrieved 6 September 2011.
  10. "TestPlant announces localisation of Eggplant for Chinese market". Archived from the original on 22 June 2015. Retrieved 22 June 2015.
  11. ""United States Patent", Method for monitoring a graphical user interface on a second computer display from a first computer, January 11, 2011". Patft.uspto.gov. Archived from the original on 18 January 2017. Retrieved 6 September 2011.
  12. ""UK Trade and Investment", London technology company granted US patent for groundbreaking new interface tool, April 15, 2011". Ukti.gov.uk. 15 April 2011. Retrieved 6 September 2011.
  13. "'Eggplant functional free trial'".
  14. ""Test Plant Press Release", TestPlant updates industry-leading robotic test tool, Eggplant, with optical character recognition (OCR) and support for Mac OS X Lion, July 25, 2011". Testplant.com. 25 July 2011. Archived from the original on 30 September 2011. Retrieved 19 September 2011.
  15. "Eggplant Functional Release Notes".
  16. "Using Eggplant Functional to test Android Smartwatches".
  17. "'Eggplant integrations'". Archived from the original on 1 May 2018. Retrieved 30 April 2018.
  18. "Eggplant Testing, new partner integration".
  19. "Using eggPlant Functional from Bamboo".
  20. "Integration with HP Application Lifecycle Management".
  21. "eggPlant is 'Ready for IBM Rational'".
  22. "Jenkins Integration". Archived from the original on 26 August 2016. Retrieved 24 August 2016.
  23. "About eggDrive".