# Eggplant Functional

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. The software was initially developed by Redstone Software, a subsidiary of Gresham Computing PLC, starting in 2002. On September 2, 2008, Redstone Software was acquired by a UK-based company called Testplant, which later rebranded itself as Eggplant.

## Approach

Eggplant Functional employs a two-system model, comprising 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). Any system running a VNCserver can function as a SUT. Originally designed for Mac, the controller environment/IDE is now also available on Linux and Windows via GNUstep.
The SenseTalk feature allows for the creation of scripts either manually or through an 'assisted scripting' mode, where the user guides Eggplant Functional in navigating a system and verifying a set of test steps. Additionally, the 'Turbo Capture' feature streamlines the image capture process and automatically generates SenseTalk code based on the user's actions.
In 2011, Eggplant released Eggplant Functional v11, which introduced an integrated Optical Character Recognition (OCR) engine. This version is compatible with the Mac, Linux, and Windows platforms.
Also in 2011, Eggplant was granted a US Patent, and launched a mobile testing solution.
In 2013, Eggplant Functional was localized for the Chinese market.

## Product

Eggplant Functional utilizes intelligent image recognition algorithms to 'see' the display screen of the computer under test. The software secured a U.S. patent for its 'method for monitoring a graphical user interface on a second computer display from a first computer', which underpins its GUI testing tool. Human attention is also not needed with this feature. This feature operates without the need for human attention, which attracted the interest of UK Trade & Investment, particularly its defense and security organization, the Defence and Security Organisation (DSO).
Eggplant Functional can be operated from Mac, Windows, or Linux to test a wide range of platforms, technologies, and browsers. It supports mobile testing, cross-platform testing, rich internet application testing, and performance testing. The company also provides a free trial download of Eggplant Functional.
Version 11 added the integration of the OCR engine and Mac OS X Lion Support. Version 12 of Eggplant Functional featured a user interface redesign, consolidating the suite interface and introducing scalable search, which allows testing across different screen sizes using the same image. Version 14 added database integration via ODBC, released eggOn VNC for Android, and introduced Image Update Tools for adjusting images and retraining scripts. Version 15 introduced Tables for keyword-driven testing and Turbo Capture for script recording. Additionally, it enabled the ability to push applications to mobile devices for installation and included a built-in VNC server for Android devices, which is automatically deployed to the device when a connection is first established. This new VNC server for Android enabled the testing of Android smartwatches

## Integration

Eggplant has developed integration plug-ins for several popular continuous integration and Application Lifecycle Management (ALM) tools, collectively known as Eggplant Integrations.
* IBM UrbanCode
* Bamboo
* HP Application Lifecycle Management
* IBM RQM
* Jenkins
Scripts can also be written in other programming languages to invoke SenseTalk commands and leverage Eggplant Functional's image-based searching capabilities through eggDrive.