Testing mobile apps is not easy. If you wanted to test "Hello World" app with a button and text label, that wouldn't be really hard. But our apps do a lot more. They are calling RESTful services, checking on user's GPS location or using Facebook or Google+ login buttons, which connect to network themselves. How do you test that? I want to show you my approach to functional testing with Espresso and a bit of dependency inversion magic. Do you have a feeling testing network error conditions is hard or cumbersome when done manually? Turns out it's even easier to automatically test it than "the happy path". You will see real code from production app, so remember to drink a shot of espresso before joining this session.
Please find the presentation slides by the following link: http://slides.com/mg6maciej/functional-testing-droidcon-berlin-2015#/