Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pvillads/adding schema #318

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,26 @@

## Overview

Power Apps Test Engine is an open source project with the aim of providing makers with a single automated testing platform for all Power Apps apps. Test Engine has the following benefits:
Power Apps Test Engine is an open source project with the aim of providing makers with a single automated testing platform for all Power Apps apps.

- Power Fx test authoring - Makers can author tests in YAML format using the familiar Power Fx language.
Test Engine currently supports Power Apps canvas apps. Model driven apps are not currently supported.

Test Engine has the following benefits:

- Power Fx test authoring - Makers author tests in YAML format using the familiar Power Fx language.
- DOM abstraction - Tests are authored using references to control names that are defined at design-time. Test authors do not need to write JavaScript, and do not need to be familiar with the browser DOM of the app's rendered output.
- Connector mocking - Test authors can optionally create mocks of network calls, typically used when Power Apps make calls to connectors. This allows the app to be tested without modification to the app itself while avoiding any unwanted side-effects of the external APIs.
- Screenshot and video recording support - Test Engine can take screenshots at any point during your test execution, and records videos of the test run. This can be very helpful to diagnose failed tests and to understand what the actual experience of the failed test case was.
- Screenshot and video recording support - The Test Engine can take screenshots at any point during your test execution, and may records videos of the test run. This can be very helpful to diagnose failed tests.

Build this project using the instructions below. This will create a local executable that can be used to run tests from your machine.

Test Engine uses [Playwright](https://playwright.dev) to orchestrate the tests.

Test Engine currently supports Power Apps canvas apps.

## Getting Started

To get started, you will need to clone the Test Engine code from GitHub, locally build the project, and install the browser(s) you wish to use to execute the tests. Once you have the Test Engine executable built, the repo contains a library of sample test plans and apps you can use to exercise the tool.

### Prerequisites for building Test Engine

1. Install [.NET Core 6.0.x SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0)
1. Install [.NET Core 6.0.x SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) or later
1. Ensure that your `MSBuildSDKsPath` environment variable is pointing to [.NET Core 6.0.x SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0).
1. Make sure [PowerShell](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell?view=powershell-7.2) is installed.

Expand Down Expand Up @@ -106,7 +106,7 @@ This refers to the account that Test Engine will use to execute the test.

Test Engine does not support multi-factor authentication. Use an account that requires only a username and password to sign in for your tests.

Test credentials cannot be stored in test plan files. Rather, they are stored in PowerShell environment variables. The test plan file contains references to which environment variables are used for credentials. For example, the following snippet indicates that the `user1Email` and `user1Password` environment variables will be used:
For safety reasons test credentials cannot be stored in test plan files. Rather, they are stored in environment variables. The test plan file contains references to which environment variables are used for credentials. For example, the following snippet indicates that the `user1Email` and `user1Password` environment variables will be used:

```yaml
environmentVariables:
Expand Down
2 changes: 1 addition & 1 deletion docs/Yaml/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ View the [samples](../../samples/) folder for detailed examples.

| Property | Description |
| -- | -- |
| [test](./test.md) | Defines one test suite, the test cases in the test suite and configuration specific to the test suite |
| [testSuite](./testSuite.md) | Defines one test suite, the test cases in the test suite and configuration specific to the test suite |
| [testSettings](./testSettings.md) | Defines settings for the test suite that are reused across multiple test cases |
| [environmentVariables](./environmentVariables.md) | Defines variables that could potentially change as the app is ported across different environments |
Loading
Loading