Yesterday, we had a very successful webinar with our good friend, Forrest Dobson on Supply Chain testing. When we had originally scheduled this webinar, PeopleTools 8.51 was not yet shipping. However, when we got our first look at PeopleTools 8.51, we realized that many of the technical challenges to automating testing in Supply Chain were solved with this robust new tool.
Supply Chain Testing Challenges
The nature of the business processes in supply chain can make them challenging to automate, especially using tools that focus exclusively on user interface testing. This is because batch is an important component of these business processes (and problems often show up in those batch processes). Therefore, the ability to run a batch process, wait for it to complete, check status, and check results is very important.
As such, here are the things to consider when automating your supply chain testing
- How do I stream together online and batch processing
- How do I verify when a batch process is done (and check the status)?
- How do I manage my tests indepenently from my test data, so that I can maximize re-use?
- How do I create tests that are not fragile?
- Allow tests to run in different environments
- Eliminate navigation from you tests (you don’t need to test that)
- Only test the UI elements that you care about
- Ensure you have the proper state at each point in the process (i.e. signed in, data values for next steps are populated, etc.)
- How do I validate my results?
How the PeopleSoft Testing Framework solves this
Let’s explain how the testing framework solves these issues:
- Connection information externalized from test – The tests themselves are not bound to a specific URL or userid (or even database). This allows you to re-use the tests against different environments and users.
- Meta-conditions – (not an official term… one I made up) In the tests, there are several very valuable constructs that understand how PeopleSoft works under the covers. The two most important are Browser:Start Login (where the login comes from the external definition and it knows how to check results), and Process:Run (where it will invoke the process and check the status of it to know how it’s progressing and when it’s complete).
- Test Cases – This allows you to supply different sets of values to your tests, allowing re-use of the functional steps with different sets of data
- Checking and Setting Values – There are several reserved words in the test framework that allows the checking and setting of values in one statement (versus coding them in additional steps). Probably the most important one is the #CHECK# word, which will both check a value and set it to that value if it fails the check.
Where to learn more
You can go here to learn more about this from the following project (complete with screenshots and a working test definition). The PeopleSoft Test Framework’s PeopleBooks can also be accessed here.
We’re so excited about the positive impact of automated testing, that we’re incorporating this into our product plans. Because it’s hard to get the value of automated testing without having tests already defined, we are planning to sell packaged services to get organizations up and running with the highest value tests in the different functional areas. If you’re interested in learning more or partnering with us to build the right ones, feel free to contact us
Labels: PT851, Testing