It is a pattern we like to use in our team when writing UITests that are functional, easy to maintain and also cross platform! The best part is the pattern is testing framework agnostic. We started with using it with Xamarin.UITest (for C# Tests) and were able to apply it to other UITesting platforms like XCUITest, Espresso, etc. The session demonstrates the page object pattern (POP) through a live code session. We have tried both simpler and more complex architectures in the past and have found this approach to be one of the best. It is easily adopted by people who are learning how to write tests, but also provides the scalability needed to build out larger, more complicated test suites.
Page Object Pattern : Xamarin.UITest Sample : https://github.com/xamarin-automation-service/uitest-pop-example
Page Object Pattern : XCUITest (Apple’s UITest Framework) Sample : https://github.com/xamarin-automation-service/xcuitest-pop-example
Page Object Pattern : Appium (Java Appium Framework) Sample : https://github.com/xamarin-automation-service/Appium.POP.Example
Page Object Pattern : SpecFlow with Xamarin.UITest (Visual Studio for Mac) Sample : https://github.com/xamarin-automation-service/uitest-specflow-example