Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Feature]: Guaranteed testing against latest published version of Canvas Apps

Open
#625 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
csharp
Domain
testing-qa

Research direction

No files, tests, or entry points are named. Start by locating Test Engine's Canvas App launch and version-handling flow, then determine how it could compare the running app with the latest published version and wait or reload; done means tests consistently run against the version intended for deployment.

Written by the indexing model from the issue text.

Description

enhancement
Is your feature request related to a problem? Please describe.

A long-standing issue with Canvas Apps is that when users open an app that was very recently re-published, they may actually get the previous version instead of the latest version. For example, if version 1 was published yesterday, and version 2 was published 5 minutes ago, launching the app might open version 1 instead of version 2.

This issue affects Test Engine just as it does regular users.

Although this is not an issue with Test Engine itself, it is not acceptable for this scenario to exist in any context where Test Engine is being used.

  • The tests defined in Test Engine's test plan will be defined with version N in mind, and may not work as expected on version N-1, producing false positives or false negatives
  • Test Engine may be used in a CI/CD pipeline, and the test results (pass vs fail) may be critical to deciding if export and/or deployment should proceed, so it is vital that Test Engine is testing (100% of the time) the version of the Canvas App that is being deployed (most recently published, with no delay)
Describe the solution you'd like
  • "Fix" the player so if a newer version of the app is published (or in the process of being published) it waits for publishing to finish and loads that new version
    • Perhaps this could be controlled by a query string parameter so it doesn't affect business users in production, but honestly I've heard many users in production complain that they aren't seeing the latest version of an app, several minutes or even hours after publish/import
    • Btw, I do understand this is a larger ask, probably beyond the control of the Test Engine team, but I do think the Test Engine team should be championing a solution for this problem

OR

  • Have the Test Engine compare the version of the currently running application against the last recorded version of the application, and if they do not match then wait/reload until the two versions match and then proceed with testing
Describe alternatives you've considered

Definitely not ideal, but...

  1. Before every publish, add expected version number to a text input control (cannot use variables because of #624)
  2. Use connector get the latest recorded version of the app in Dataverse
  3. In another text input control, set the default value of another text input control to the latest recorded version
  4. In test case, compare the values of the two text controls, and fail if they do not
Additional context?

No response

Dominant language
C#
Stars
150
Forks
55
Avg merge
5d 23h
Merged PRs (30d)
4

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/PowerApps-TestEngine

All issues in microsoft/PowerApps-TestEngine

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.