As a developer we all know about that rumor of writing any kind of test is a costly task. In this post I would like to show you a better way for writing UI tests that even makes it fun when it comes to a very large mobile app.
Where Do We Come From?
To get a propper set of tests for an application we normaly have to specify what we want to test, we have to create the test cases, classes and what ever is involved to test our application.
With Xamarin Test Cloud you can fill your test cases with life through a REPL command line tool. With REPL you start navigating through your app by querying each screen for contained UI controls and later operate on them.
A simple test for a login button would look like this:
public class TelematicsDroidTest
public void LoginAsDemoUser()
Func<AppQuery,AppQuery> demoLoginButton = e => e.Id("Logon_LoginDemo_Button");
Func<AppQuery, AppQuery> mainFragmentContainer = e => e.Id("Main_FragmentContainer");
_app.WaitForElement(demoLoginButton, "Timed out waiting for the Login_LoginDemo_Button to appear.");
_app.WaitForElement(mainFragmentContainer, "Timed out waiting for the Main_FragmentContainer to appear.");
What is not visible is the amount of time to get there. Remember, you normaly would test this with REPL first, later copy it into the test case, try it localy again and as the last step upload it to Xamarins Test Cloud. While this is easily understandable for software developers, a tester might not be into that kind of time consuming test creation process.
How Can We Improve This?
With the launch of Xamarin 4, which contains tons of improvements to the Xamarin ecosystem in general, comes my favorite feature called Xamarin Test Recorder.
Xamarin Test Recorder makes UI testing very easy no matter if you are at the beginning of UI testing or just want to have additional tests for your app.
Why does it improve the creation of UI tests:
Point and click pattern makes it easy to create UI tests for people without programming knowlage
Write tests while manualy test the app
Good to use for small and big app projects
With Test Recorder you don't need to use the REPL tool.
Ich bin Mobile-Enthusiast mit großer Begeisterung für die Entwicklung von Cross-Plattform-Apps mit Xamarin, .NET MAUI und .NET. Mein Ziel sind glückliche Apps und zufriedene Anwender. Als Geschäftsführer der Cayas Software GmbH genieße ich
die Freiheiten der neuen Plattform-Vielfalt und die sich daraus ergebenden Möglichkeiten.
Matt Goldman revived #XamarinUIJuly and renamed it to #MAUIUIJuly, where each day in July someone from the .NET MAUI community publishes a blog post or video showing some incredible UI magic in MAUI. In this contribution I will show you how to combine Lottie animations with gestures and scrollable containers to spice up your .NET MAUI App UI!
I am currently working on porting a Xamarin Forms app to DOTNET MAUI. The app also uses maps from Apple or Google Maps to display locations. Even though there is no official support in MAUI yet, I want to show you a way to display maps via custom handler.
During a current project we needed to evaluate possibilities to easily set up a Continuous Integration and Deployment system. For several reasons we normally would suggest an In-House solution with TeamCity, but the customer preferred a cloud solution to shorten the procurement and installation process. In this post I explain why and how we set up Bitrise.