The
Phantom Language is a powerful, robust scripting language
used to automate interaction with windows and controls
in Microsoft Windows operating systems. The language supports
common scripting capabilities such as variables, flow
control, and user defined functions coupled with a large
set of built-in functions designed specifically for automation.
Phantom is very stable, providing a platform for reliable,
repeatable automation. With over 200 built-in functions
and the ability to create user-defined functions, there
is virtually no task that cannot be automated using Phantom.
The following are just a few examples of how Phantom can
be used:
Automated Testing - Phantom can be used
to automate the testing of Microsoft Windows based applications.
Phantom test scripts are a valuable, repeatable addition
to any manual testing process.
Regression Testing - Phantom scripts
can be used to perform automated regression testing of
your product. This is a cost-effective way to ensure new
changes to an application dont introduce defects in existing
features.
Process Automation - Phantom can be used
to automate complex processes requiring user interaction
between many different kinds of applications. By using
Phantom to automate processes, manual error input errors
are eliminated, resulting in a more efficient, stable
process.
For more information on Phantom, consult the Phantom
documentation or check out the sample scripts in the
tutorials
or the samples section.
Phantom v2.0
Version 2.0 of the Phantom language represents a complete
overhaul of the Phantom system. The script interpreter
was redesigned from the ground up to provide a more flexible
and robust scripting experience. Additionally, the following
new features are supported:
New Variable Types
Phantom v2.0 supports new variable types. Data types such
as bitmaps, option sets, registration keys, and more can
be accessed through new variable types.
New Functions
A whole suite of new functions are available in version
2.0. New window functions as well as new general functions
allow for more control and options for automation. Additionally,
future extensions can be loaded using the function package
system.
New Keywords
New keywords were added to Phantom version 2.0. The new
keywords allow greater control of the state of a script,
including the manual removal of previously declared variables
and functions.
Exception Handling
Phantom errors, warnings, and failures can now be handled
using the try-catch statements. Additionally, scripts
can create and throw user-defined exceptions using the
new exception data type.
Variable Arrays
Variables can now be in multi-dimensional arrays in Phantom.
Console Mode
Phantom now has a console mode. Phantom commands can by
typed directly into a console to be executed real time.
This is great for experimenting with new Phantom commands.
Phantom Target Application
Phantom Target, included with the Phantom Interpreter,
is a an application containing many window types supported
by Phantom. It is provided for use with the many samples
included in this documentation, as well as for trying
Phantom commands before integrating them with automation
scripts.
Bitmap Capture
Using the new bitmap data type and the CaptureBitmap function,
individual windows can have their bitmaps captured and
saved to a file. Bitmaps can also be loaded from files
and compared to other bitmaps.
Script Calling
External Phantom scripts can be inserted into a script
at run time. The scripts are run as though they were a
part of the calling script. Useful for creating script
pre and post processors, declaring global variable sets,
and including common user defined function sets.
Expandable
Future function sets can be added directly and seamlessly
to Phantom, without the need to re-install.
Variable Scope
The scope of variable declarations is different in Phantom
version 2.0. Variables declared in functions and in flow
control statements are not available outside those statements
(or outside their 'scope'). This is more in line with
C and other common programming languages.
|