Frameworks for testing Model-Driven Apps (Power Apps)
Testing Model-Driven Apps (Power Apps) is primarily based on code approaches, as they are based on established structures on Dynamics 365 CRM. Although the development of Model-Driven Apps is getting closer and closer to the possibilities of Citizen Developers through continuous enhancements, especially the testing of them is code-heavy. In summary, tools exist to test interfaces and components as well as data structure integrity.
Tools for Testing Model-Driven Apps
EasyRepo – UI Tests
Open Source: Yes
Initial Effort: Medium to High
Approach: Low-Code and Code
EasyRepo is a free, additional library that can be used to check the UI of Model-Driven Power Apps for consistency in different scenarios through automated test procedures. In addition, routine user workflows can be tested. A large number of functions of the Model-Driven App framework are supported. Technologically, the EasyRepo library is based on Selenium and thus on a framework for “automating browser applications, which […] is one of the best-known and most popular UI test automation solutions for web applications”.
Fake XRM Easy – Unit Tests
Open Source: Yes
Initial Effort: High
Fake Xrm Easy allows automated testing of plugins written in C# as extensions for Model-Driven Apps. This application describes an extension to XrmToolBox – a tool that can connect to Dataverse environments and can be used to make technical modifications through numerous community extensions. With Fake Xrm Easy, the XrmToolBox is provided with a fast and locally available Dataverse database to perform local unit tests with established .NET test frameworks. unit tests using established .NET test frameworks. NUnit and xUnit.ne are explicitly recommended.
Solution Checker – Data Structure
Open Source: No
Initial Effort: Low
The integrated Solution Checker describes a Microsoft Power Plarform procedure for checking data structure integrity – related to Dataverse as well as Model-Driven Apps and Canvas Apps (see also “App Checker”). The Solution Checker is integrated into the AD&D process and focuses on the quality check before delivery of a (new) version of an application. The tool can be used without technical knowledge; understanding and fixing problems that may be identified may require the involvement of IT specialists.
Canvas apps are not directly based on a data model. Where model-driven apps have a direct link between the data model and the user interface, canvas apps aim to create interfaces independent of the data source. This promotes low-code thinking and the work of citizen developers. Canvas Apps are therefore tested differently from Model-Driven Apps. Read my article on Canvas app testing to learn more.
Questions & Anwers
How can I test Model-Driven Apps (Power Apps)?
You can test the UI, components and data structure integrity within Model-Driven Apps. Tools such as EasyRepo, Fake XRM Easy and the Solution help you for these tasks.
Is there a test framework for Model-Driven Apps (Power Apps)?
There is no one-fits-it-all test framework available. However, tools such as EasyRepo, Fake XRM Easy and the Solution help you for testing your awesome apps.
How can I perform UI tests of Model-Driven Apps (Power Apps)?
EasyRepo is a library for UI testing of Model-Driven Apps (Power Apps) through Robotic Process Automation (RPA).
How can I perform Unit Tests of Model-Driven Apps (Power Apps)?
Fake XRM Easy helps you to automate testings of your C# plugins for Model-Driven Apps (Power Apps).
How can I perform data structure tests of Model-Driven Apps (Power Apps)?
The Solution Checker validates the data structure integrity selected items, such as tables, relationships, apps, and more.