Eggplant Functional is a black-box GUI test automation tool, developed in Boulder, Colorado by Doug Simons, Jonathan Gillaspie and John McIntosh, the software was developed by Redstone Software starting in 2002. Redstone was acquired on 2 September 2008 by a UK-based company called Eggplant. Its approach uses image matching technology as opposed to looking to the object-level of the application being tested. This allows for system-wide automation of a system-under-test as opposed to an application-specific solution. It also means that the technology used to build the application to be tested does not matter, nor does the system that the application runs on.
Approach
Eggplant Functional uses a two-system model, consisting of a controller machine, where scripts are authored and executed, and a system under test which may be running a VNC server. Eggplant Functional can either connect to the VNC server via its built-in viewer via TCP/IP, or connect to a system that supports Remote Desktop Protocol. Any system that has a VNC server for it can be a SUT. Originally Mac-only, the controller environment/IDE is now available on Linux and Windows using GNUstep. Scripting is accomplished using a proprietary scripting language called SenseTalk, an English-like language that is easy to use. SenseTalk allows for manual script creation, or can be used in conjunction with a "assisted scripting" mode, meaning the scripter teaches Eggplant Functional to navigate a system and verify a set of test steps. A new feature has been recently added to Eggplant Functional called "Turbo Capture" which facilitates script creation by recording a series of mouse and keyboard actions as they are executed against a live SUT. Eggplant Functional then facilitates the image capture process and generates SenseTalk code according to the actions executed. In 2011, Eggplant released Eggplant Functional v11, which integrated an Optical Character Recognition engine. It is compatible with the Mac, Linux and Windows versions. Other notable achievements of 2011 include the US Patent received on Eggplant granted by US Patent and Trademark Office, and the launch of Eggplant mobile testing solutions enabling network providers, application developers and manufacturers to test software and applications on wireless devices like tablets and smartphones. In 2013, Eggplant Functional was localized in Chinese.
Product
The testing tool, 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 "ethod for monitoring a graphical user interface on a second computer display from a first computer" for its GUI testing tool. This also enables it to run without need of human intervention. This brought it to the attention of UK Trade & Investment, specifically its defense and security arm, the DSO. 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. Version 11 added the integration of the OCR engine and Mac OS X Lion Support. 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 is built into Eggplant Functional and automatically pushed to the Android device when a connection is first made. This new VNC server for Android allows the testing of the Android smartwatch. Not only can Eggplant Functional test mobile devices but it has solutions for non-jailbroken devices including Android and iOS. eggOn and the new built in VNC server are the Android solution and the iOS Gateway is the main iOS solution. It works for iOS 7 + iOS 8.x, and support for all future versions is planned, but eggOn is still available and supported for iOS 5 + 6.
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.
Scripts can also be written in other languages to call out to SenseTalk commands and utilize Eggplant Functional's image-based searching using eggDrive.