When Bartek wrote his first lines of code at the age of 14, he immediately fell in love with programming. He’s currently a mobile developer at LeanCode and a Computer Science student at the Silesian University of Technology. As an avid fan of open-source, he maintains a few Flutter packages and contributes whenever the opportunity arises. When not writing code for work, school, or side projects, he rides a bike in the woods in search of geocaches or plays Battlefield. Likes cats, tanks, and UNIX philosophy.
Reimagining Flutter UI tests with Patrol
10:20 > 40 min
Flutter UI integration testing can be really cumbersome, especially in a mobile app that depends also on the native side features. Unfortunately, Flutter integration test fail when a native permission dialog appears or we'd like to interact with some native platform view. We experienced the same blocking issues while testing apps that we develop at LeanCode.
That's why we created Patrol - an open-source framework for testing Flutter apps - developed by LeanCode. With Patrol you can write your UI tests in Dart (like you would with integration_test), but you are enabled to test interactions with native side - tap on native views, browse WebViews and even go interact with some other app on the device. The main goal of Patrol is to make running Flutter UI tests a piece of cake for QA teams and devs.
We’ll share with you the problems with existing solutions that prompted us to start Patrol, what differentiates it from others, and how it helps you write tests. We’ll also take a look under its hood and share the blockers that we encountered (and are still encountering) developing it, and what features we’re planning in the future.