Rational® Functional Tester overview
Rational® Functional Tester is an object-oriented automated functional testing tool that tests HTML, including HTML 5, Java, Windows, .NET, Visual Basic, SAP, Silverlight, Eclipse, Siebel, Flex, Ajax, Dojo, GEF and PowerBuilder applications. With its ability to test HTML 5-based applications and UI frameworks, Rational® Functional Tester also tests the user interface of Web applications on the desktop and on mobile devices.
Rational® Functional Tester runs on Windows® and Linux® platforms, while the HTML5-based testing features run on Mac OS, in addition to Windows® and Linux®.
Two perspectives: Functional Test and UI Test
When you work in the Eclipse IDE, you work in the context of a perspective, that is, a set of pre-defined views and editors. Rational® Functional Tester includes two perspectives that you can use to do your testing: the Functional Test perspective and the UI Test perspective.
The Functional Test perspective
The Functional Test perspective is the same perspective that has always been available in Rational® Functional Tester. Use it to test native applications or hybrid applications that sometimes include embedded web technologies. You can also use Rational® Functional Tester to test Adobe® PDF documents, and zSeries®, iSeries®, pSeries®, and mainframe applications.
- Rational® Functional Tester, Eclipse Integration uses the Java™ language.
- Rational® Functional Tester Microsoft Visual Studio .NET Integration uses the VB.NET language and the Microsoft® Visual Studio .NET development environment.
The UI Test perspective
The other testing perspective that is available to you in the Rational® Functional Tester Eclipse IDE is the UI Test perspective.
The UI Test perspective includes support for HTML5 and several HTML 5-based UI frameworks. You can use the UI Test perspective to test browser-based Web applications from a desktop or laptop computer or from a mobile device by capturing UI actions against the HTML controls on web pages. In addition, you can manage Selenium Java™ tests, Appium Java™ tests, and create compound tests with multiple test types, including functional tests, Web UI tests, mobile tests, Selenium and Appium tests. The capabilities provided in the UI Test perspective are not available in the Microsoft™ Visual Studio .NET environment.
Rational® Functional Tester technology and features in the Functional Test perspective
The object-oriented recording technology in the Rational® Functional Tester Functional Test perspective lets you generate functional testing scripts for automated testing quickly by recording against the application under test. Rational® Functional Tester uses object-oriented technology to identify controls or objects by their internal properties and not by screen coordinates. If the location or text of a control or the object changes, Rational® Functional Tester can still find it during playback.
The object testing technology in Rational® Functional Tester enables you to test any controls or object in the application under test, including the control properties and data.
In Rational® Functional Tester, you have the option to capture snapshots of the application controls while recording the simplified functional test script. The captured application visuals are displayed in the Application View. You can use the application visuals to modify the simplified functional testing scripts and insert or edit verification points without opening the test application.
While working with the Rational® Functional Tester Eclipse Integration or Rational® Functional Tester, Microsoft Visual Studio .NET Integration, the test object maps are used and the application visuals are not available. When you record a functional test script, Rational® Functional Tester automatically creates a test object map for the application under test. The test object map lists the test objects available in the application, whether they are currently displayed or not. The object map provides a quick way to add objects to a functional test script. Since the test object map contains recognition properties for each object, you can easily update the recognition information in one central location. Any functional test scripts that use this test object map also share the updated information.
During recording you can insert verification points into the script to confirm the state of a control or an object across builds of the application under test. The verification point captures object information (based on the type of verification point) and stores it in a baseline data file. The information in this file becomes the baseline of the expected state of the object during subsequent builds. Rational® Functional Tester has an object properties verification point and five data verification points (menu hierarchy, table, text, tree hierarchy, and list). You can use the Verification Point Comparator to analyze differences across builds and update the baseline file.
Rational® Functional Tester features platform-independent and browser-independent test playback. For example, you can record a functional test script on Windows® and play it back on Linux®. You can record a functional test script using Firefox or Internet Explorer. Because the functional testing script contains no references to the browser used during recording, you can play back the functional test script using any of the supported versions of Firefox or Internet Explorer.
Rational® Functional Tester Proxy SDK for the Functional Test perspective
With Rational® Functional Tester proxy software development kit (SDK) you can extend automated functional testing support for application user interface controls (GUI test objects), beyond what is provided by default.
Rational® Functional Tester integrations
Both perspectives support integration with various products such as Rational® Quality Manager, Rational Team Concert™, IBM Urban Code Deploy, Jenkins, and Ant. The Functional Test perspective also provides support for Cucumber.
Rational Team Concert™ integration: You can integrate Rational® Functional Tester with Rational Team Concert™ and manage functional test assets using any of these source control management tools.
Rational® Quality Manager integration: Rational® Functional Tester can be integrated with IBM® Rational® Quality Manager by configuring the adapter and execute the functional test scripts from Rational® Quality Manager.
IBM Urban Code Deploy, Jenkins, Cucumber, and Ant provide additional ways to run functional test scripts.
Rational® Functional Tester Extension for Terminal-based Applications in the Functional Test perspective
Rational® Functional Tester Extension for Terminal-based Applications supports functional testing of zSeries® (Mainframe such as TN3270, TN3270E), iSeries® (AS/400® such as TN5250) and pSeries® (Virtual Terminals such as VT default, VT100, VT420-7, VT420-8, VT UTF-8). Rational® Functional Tester Extension for Terminal-based Applications tool helps you create test scripts to automate the functional testing of host application test cases. It provides a rich set of capabilities to test host attributes, host field attributes and screen flow. It uses terminal verification points and properties, as well as synchronization code to identify the readiness of terminal for user input.
Accelerating the test effort with distributed testing in the UI Test perspective
The Rational® Functional Tester UI Test perspective helps you accelerate the test effort by providing ways to distribute test execution across multiple browsers and multiple computers simultaneously. Here are some of the capabilities provided by the UI Test perspective:
- The ability to run a single Web UI test on multiple browsers and mobile devices simultaneously
- The ability to run multiple Web UI tests on multiple browsers and mobile devices simultaneously
- The ability to run multiple Web UI tests across multiple remote computers simultaneously (Requires integration with Rational® Performance Tester)
- The ability to run multiple Web UI and compound tests simultaneously, both from the IDE and the command line
- The ability to run Web UI tests in the cloud
- The ability to record a Web UI test in one browser and play it back in another browser or on a mobile device
- The ability to test mobile Web applications on mobile devices
Test mobile web applications in the UI Test perspective
The UI Test perspective includes support for testing browser-based web application that are developed using pure web technologies, such as HTML 5, CSS3, and JavaScript libraries, such as Dojo Mobile and JQuery Mobile. Web applications are developed to run in multiple browsers and are platform-independent.
You can also perform mobile application testing using the Appium test automation framework or in a device cloud environment. You can run JUnit Appium tests in an Appium framework.