Here are several ways to do it with TestProject:
The simple way
By using the “start activity” action which opens a new application in the same test scope of original application
Start your test normally on application A and complete the desired steps/actions, then use the “start activity” action as described below to lunch application B and do actions there.
The flow: create sequence of events on App A —> lunch app B —>validate event on App B —> go back to app A do other event —> launch App B —> validate something else on B, etc
Specify the package and activity (you can find it under application sections after the application is created)
Execute the “start activity” step, the new application will be lunched on the desired activity (screen), continue record the desired actions/steps on application B.
To get back to your original application, just record pressing the back button.
Note – you can share parameters between the 2 applications by simply defining test params and using them in your sequence
The advanced way
is to make a job which will contain 2 tests for those 2 apps
In the first test App A will execute the desired sequence of actions and then end
After it ends the second test will start, with the second application running it’s desired actions.
If you want to get back to the original application you will have to create another test with the first application, but disable the resetting app step (so you can come back to the state the application was before)
The flow: Start test on App A (triggering event) —> End Test —> Start test on App B (validating event) —>End Test —> start another Test on App A without reset app step (validating expected results),etc…
Useful article about jobs:
To communicate between those two tests, you can use project parameters,
to create project parameters click on the 3 dots and select parameters:
And then click on project, and click on + icon to add the parameter
Those 2 tests have access to those parameters and can change and read them for your needs.