Challenge Overview
In the previous challenge, we implemented a prototype app in Xamarin with a small set of screens. This challenge aims at implementing the UI tests of the prototype app.
-
Target environment: iPad, Android Tablets
-
Basic Requirements: Implement the UI tests for the existing Xamarin prototype app.
Technology Stack
- NUnit: The unit test framework for .NET & Xamarin.Forms
- Xamarin.Forms: The cross-platform framework to build the app.
- C# - The programming language of Xamarin.
Project Background
Reliability Care is an Asset Reliability Centered business performance tool, specifically designed for Power grids and Substations asset reliability management. The aim of this project is to develop the Mobile application (iOS and Android) using Xamarin framework.
Individual requirements
The existing codebase is in
(1) Test case creation
Please create UI test cases for the existing functionalities, like IP address/URL validation in Connect page, Mock Login validation tec, please be sure your test cases NOT ONLY just includes the positive results, BUT ALSO includes the negative results.
You should provide a document that lists all the test cases.
Each test case should include
-
Test steps
-
Expected outputs
-
Actual outputs
(2) Unit test implementation
Implement the UI tests, you must ensure all the unit tests are passed
Important Notes
-
The app is required to target on tablets, including iPad and Android tablets.
-
Your C# should follow the best practice, here are the references
-
The review will be based on if your UI tests are thorough or not.
-
The code base is https://gitlab.com/abb-mobile-xamarin/abb-mobile.git, master branch. You can grant yourself access by a Topcoder-X link provided in the forum.
Final Submission Guidelines
-
The patch against the latest commit hash of the existing code base. You should create a UI Test project in the existing Xamarin project.
-
The README.md that includes the steps of how to deploy and run your UI Tests
-
A documentation that includes all test cases you created and implemented