PeopleSoft Test Framework (PTF) and BEAM Test
PeopleSoft Test Framework (PTF) and BEAM Test are two testing tools that were built specifically to work with PeopleSoft/PeopleTools. PTF is delivered with PeopleTools. BEAM Test, from Beacon Services, is the only third-party testing tool with Oracle Validation for PeopleSoft.
PTF and BEAM Test have some similarities. There are also some basic differences, in terms of architecture and processing. We will start with how the two products are similar, and then contrast some of the differences.
There are many other good automated testing tools. Few work well (or at all) with PeopleSoft applications, due to a lack of integration with the unique architecture and metadata of PeopleSoft tools and applications.
1. Integration with PeopleSoft Metadata
Both BEAM Test and PTF are integrated with the metadata of PeopleSoft.
Both tools are aware of the structure underneath the UI (user interface). In other words, both products recognize a field on a page not by where it is (on the page), but by what it is (in the PeopleSoft metadata). This is very important in minimizing on-going script maintenance, and is also helpful in identifying underlying changes that may cause a test to fail.
So, if a field is moved to a different location on a page, or if a button is re-located, or re-labeled, the test script will run just fine, in both BEAM Test and PTF. Additionally, when a script does not run successfully, both tools will identify the discrepancy (will tell you where the test failed).
BEAM Test (Patent US 7421683) and PTF utilize underlying PeopleSoft metadata to enable the same scripts to run (and be re-run), regardless of changes to the appearance or placement of the elements on the page.
Both BEAM Test and PTF are record/playback testing tools. User clicks are recorded (to build tests) and played-back to perform, or run tests.
3. Generation of Test Scripts
Both tools capture the sequence of user steps and clicks while in Record mode. In Record mode, BEAM Test creates a Java Script. Recording in PTF generates managed objects which populate a grid stored in a table in a PeopleSoft application database. PTF tests and test cases are stored in PeopleSoft application databases.
BEAM test scripts and all other BEAM test assets are connected to PeopleSoft databases, but they are stored outside of your PeopleSoft databases.
Storing PTF test objects inside PeopleSoft has some important advantages. They are standard PeopleSoft managed objects: they can be migrated between environments, and compare reports can be run.
Storing test assets outside PeopleSoft also has its advantages. BEAM Test has no footprint in any customer PeopleSoft database. No records are added to any databases, so there is no effect on these PeopleSoft applications. Migration of scripts between environments is not needed, and IT dependence is minimized.
4. Intended User
BEAM Test is oriented toward business users and analysts. PTF recordings can (and often are) done by business users/analysts, but because the tool creates managed objects stored in PeopleSoft tables, script maintenance and migrations often require IT assistance, and the use of Application Designer and projects.
BEAM Test users can simply select which environment to create (or run) a test, and execute or record the test.
5. Intended Use
"PTF automates various tasks within the PeopleSoft application, primarily functional testing."
This is the first sentence of the PeopleTools 8.55: Test Framework documentation. In other words, Oracle presents PTF as a functional, or unit testing tool. PTF has its roots in tools built internally for PeopleSoft's own developers in the aftermath of a buggy Release 7. These tools have evolved and been enhanced (see this Oracle blog post from 2009) over the years.
Unit/functional testing is a very important first stage of testing, but it is different from the typical PeopleSoft system/regression testing most customers want to accomplish.
BEAM Test was designed and built for PeopleSoft customers, and is suitable for unit, system/integration, and regression testing.
6. Data in Script vs. Data External to Script
PTF scripts are a set of rows in a grid, stored in a PeopleSoft application database. (Image Source: PTF 8.54 Documentation)
The last column on the right, Value, is where the data for the PTF script is stored. While not a problem for unit testing, having the data in the script does have major consequences for maintenance, flexibility, and regression testing. Basically, adding more data (another test case) by definition creates more rows in the database.
BEAM Test stores test data separately from the test script. BEAM Test uses a Data File, external to the script, which is updated from Excel or SQL. A BEAM Test script runs in a loop, grabbing data (a test case) one row at a time from the Data File to execute, until all rows are processed.
Again, BEAM Test stores test data separately from the Test script while PTF combines the data into the script. If you want to test one or two employees, or assets, or vendors, fine. But if you want to test a sample of 500 employees, PTF will need to generate 500 times the rows to store these test cases.
Because the BEAM Test Data file is updated from Excel, changing the test data (add more test data rows, add more columns) is a simpler process, and requires no maintenance to the test script itself.
Finally, a word about environments.
Note: The PeopleSoft application database where test assets are stored and the PeopleSoft application that is to be tested are not required to be on the same database, but we strongly recommend you use the same database for both.(Source: PeopleTools 8.55: Test Framework page 25).
PTF script rows are multiplied by the number of test cases, and also by the number of test environments. The script contains the data, and should be within the environment.
BEAM Test separates the data from the script, both are separate from the environment(s).
In the past, with customers facing an application upgrade only once every three (or more) years, testing outside of an upgrade could be minimized. With 9.2, and PeopleSoft Update Manager updates coming frequently, and containing application functionality as well as fixes, customers need to be able to manage more frequent — but smaller — changes. Automated testing is a key part of managing this new update process.
Both PTF and BEAM Test offer record/playback approaches to automate testing, saving time and adding consistency and reliability to the testing process. The PeopleSoft Test Framework provides a primarily unit/functional testing process. BEAM Test provides a wider set of use cases, primarily addressing user oriented regression and system testing.