microsoft / PowerApps-TestEngine

MIT License
100 stars 30 forks source link

Timeline of development and multiple projects #175

Closed JordiVE closed 1 year ago

JordiVE commented 1 year ago

Hi,

Is there a timeline of when new features will be ready? For example when will we it be possible to select controls inside components?

Also, how can I best approach test automation on multiple projects? Like how do I fill this in in the config/testplan?

Thanks in advance.

Kr, Jordi

landonmsft commented 1 year ago

Hey, Jordi! Thanks for reaching out!

  1. We currently don't have a public timeline on when new TestEngine features will be available.

  2. If you're asking how to test different apps back-to-back in the same testPlan, by running a single command, we do not currently have a way to do that. Test Plans only allow you to specify one app to open & run. There are two options you can choose from if you want to run multiple Test Plans. You can either:

    • Option 1: Set config.json to point to your first TestPlan, then run TestEngine. Change config.json to point to the other TestPlan, and run TestEngine again.
    • Option 2: Set config.json to contain all variables that will remain the same between both apps. Then, use the command line to run TestEngine and add flags for each variable you want to manually change. The options you specify in the command line will only override those same options in the config.json.

The second option would probably be preferrable, as this would allow you to run two commands back-to-back. Instead of setting config.json each time you want to run a different TestPlan, you can specify the TestPlan (and other information) directly and save these commands in your console.

Here are the available flags/options you can use. This file also contains more information on using the command line for this project: https://github.com/microsoft/PowerApps-TestEngine/blob/main/docs/CommandInput.md

Example of Option 2: config.json:

{
  "environmentId": "<fill-in-environment-id>",
  "tenantId": "<fill-in-tenant-id>",
  "testPlanFile": "",
  "outputDirectory": "<fill-in-output-directory>",
  "logLevel": "<fill-in-desired-log-level>",
  "domain":  "<fill-in-desired-domain>",
  "queryParams": "<fill-in-any-additional-query-params>"
}

Run TestEngine on first app: dotnet run -i "C:\Example1\testPlan.fx.yaml"

Run TestEngine on second app: dotnet run -i "C:\Example2\testPlan.fx.yaml"

Please let me know if this response answers your questions!

Thank you again!

JordiVE commented 1 year ago

Hey Landon,

Thanks for your explication. This answers my questions perfectly!

Kr, Jordi