I am working on a project that involves three Flutter apps: a customer app, a driver app, and a pioneer app. We have already written integration tests for each app, but now we need to write a full end-to-end integration test that covers the entire cycle of ordering food from the pioneer app, delivering it to the customer, and marking the order as delivered. Specifically, we need to first run an integration test on the pioneer app to create a product, then run a second integration test on the customer app to order this product, and finally, open the pioneer app to accept the order and run an integration test on the driver app to accept and deliver the order to the customer. Can anyone suggest a way to achieve this in Flutter?
i am using patrol in integration test.
You can run all 3 apps simultaneously. A batch file running each on web could even work on a remote linux system (the batch file may need to start other batch files, each doing a
flutter run -d web
). If you want to automate the sequence of tests, then you would need some sort of controller which can wait for a test to finish before starting the next.You could use one of the 3 apps or your backend to create an http service which indicates which phase of testing should currently be running.
I recommend setting it up as follows: