User:Aeroslacker/Phantom automation

Phantom Automation Overview

Phantom is a Graphical User Interface (GUI) automation technology developed by Phantom Automated Solutions, Inc. It is used to perform automated GUI testing and for general process automation. Phantom currently supports the automation of Microsoft Windows based graphical interfaces.

The Phantom Language Automation is accomplished by interpreting a set of commands written using the Phantom scripting language. The Phantom scripting language has a syntax similar to the C language. It includes capabilities common to any high-level scripting language such as: Script flow control Multi-dimensional variables User defined functions Exception handling Complex variable types

Additionally, the Phantom language includes automation specific function sets: <li>Window control interaction functions</li> <li>System interaction functions</li> <li>Bitmap capture and control functions</li> <li>Registry interaction functions</li> <li>Mouse and Keyboard simulation functions</li>

A simple example of a Phantom script is below:

<H3>Window Declarations</H3> Phantom scritps interact with windows through the use of Window Delcarations. Window Declarations are text files created using the freely available Window Declarations Recorder. These text files contain information about each window and control to be automated. The declarations are in hierarchal form so that each windoe or control is referenced to its parent window. By using this method, as opposed to coordinated based automation, a window or control can be moved or resized without breaking automation scripts.

An example of a script calling a window using window declarations is below:

<H2>Commercial Products</H2> There are three primary products supplied by Phantom Automated Solutions, Inc. that support Phantom automation technology. <H3>Phantom Test Driver</H3> The Phantom Test Driver (PTD) application is a Microsoft Windows GUI based IDE for the Phantom language. Its primary purpose is to support large scale GUI test automation processes. It supports Phantom script development through a built-in script editor and debugger. PTD handles test automation by grouping similar test cases into groups called Suites. PTD can execute entire groups of test cases by running a single Suite.

Some features of PTD include: <li>Color-coded script editor</li> <li>Built-in, fully functional Phantom script debugger</li> <li>Automation organization through the use of script Suites</li> <li>Script and Suite output collection and display</li> <li>Built-in script recorder utility</li> <li>Built-in Window Declarations Editor</li> <li>Remote machine automation using the Phantom Remote Agent</li>

<H3>Phantom Sidekick</H3> Phantom Sidekick is a small utility that uses Phantom scripts to automate repetitive processes. Its primary use is to act a 'system wide' macro, with a single script automating multiple applications. Scripts can be triggered using a user-defined key combination or by scheduling the script using the built-in scheduler. Phantom Sidekick includes a script recorder, a script scheduler, a task-bar script execution menu, and a script editor.

<H3>Phantom Command Line Utility</H3> The Phantom Command Line Utility is a freely available DOS based utility used to run Phantom scripts. The Phantom Command Line Utility was the original automation tool developed by Phantom Automated Solutions, Inc. The current version (2.0) can run any Phantom script, including those developed using the Phantom Test Driver and Phantom Sidekick applications. The Phantom Command Line Utility includes a script recorder, a Window Declaratiosn recorder, and a target application used to test Phantom automation commands.

<H2>History</H2> Phantom version 1.0 was released in 2000, intended as a low cost alternative to existing automation technoligies. Version 2.0 of the Phantom Test Driver and Phantom Command Line Utility, as well as version 2.1 of Phantom Sidekick was released in 2008. The new releases represent a major structural change to the underlying automation engine.

A precursor to the existing Phantom engine was released in 1999 as Phantom version 0.9.

External links / References

 * Phantom Automated Solutions homepage