* Added appsettings * Added test setup for different config * Added appsettings for external login * Added acceptance tests * Updated pipelines * Updated solution file * V15 QA Added external login provider tests and split pipeline into templates (#20049) * Added setup for external login * Started on yaml * Added test file * Updated pipeline * Use env vars * Added env variables and commented out test we don't need to run * Removed list from matrix * Updated condition * Updated package path * Updated testFolder * double slash * Updated condition * Updated condition again * Added port * Removed redundant values * Set as env vars * Added env vars beneath matrix * Get env * Updated naming * Updated usage of values * Added a check for client id, to see if value set * Moved env out of pool * Tried moving env * Trying to fix the env being empty * Removed env * Updated name of variable * Fixed A cyclical reference * Updated typo * More logging * Reverted change * Added env * Added env to tests * Cleaned up * Added yaml template files * Updated nighly pipepline to use templates * Updated sln * Split yaml into templates for e2e setup * Updated pipeline * Updated solution file * Set value * Added if statement * Added variables * Set default values * Updated values * Updated condition * Run multiple tests * Added env * Updated from parameter to variable * Fixed condition * Fixed condition to use actual value * Updated npx wait on command * Updated pwsh * Updated port again * Updated port value * Updated wait on * Updated condition * Restructured * Updated var * Updated run application steps * Added echo * Updated to boolean * Updated conditions * Updated test template usage * Added databaseType * Added another databaseType * Split up templates * Fixed indentation * Updated condition * updated path * removed build from path * Updated conditions for azureAd * Fixed indentation * Updated to single qoutes * Cleaned up * Removed unused file * Clarified namin * Moved * Updated pipeline, not done * Updated locator * Updated pipelines * Updated test helpers package * Skipped build stage for default app settings tests * Updated password var * Updated locators * Updated defaultconfig build setup * Split E2E stage in two * Added parameter for skipping integration tests * Cleaned up * Added ASPNETCORE_URLS * V15 QA acceptance tests with appsettings (#19550) * Start of appsetting * Updated setup of playwright * Adjusted the pipeline * Updated appsetting * Added install test * Added comments * Updated pipeline * Updated development app settings * Commented tests out * comment * Added if statement * Updated pipeline * Fixed condition * Changed to production * Added a log * Updated copy item * Added * Updated app settings * Updated pipeline * Moved playwright login * Updated pipeline * Updated app setting * Updated nightly * Updated appsettings * Updated get * Updated wait on * Updated appsettings * Updated connection string * Updates * Skips code * Updated variable * Updated pipeline * We want to always retain the trace, to see if the test runs as expected on the pipeline * Added a temporary wait till port is open * Fixed condition * Added missing tcp for wait on * Updated URL env * Updated setup * Fixed string * Updated locator * Split tests into SQLite and SQLServer * Updated pipeline to run all tests * Retain trace on failure * Added testFolder var * Added appsettings and program for delivery api tests * Updated playwright config * Split test runners into defaultconfig and different app settings * Added delivery api tests * Cleaned up tests * Bumped version * Updated pipeline * Small fixes * Added password * Updated connection string * Fixed * Removed quotes * Removed unnecessary connection string * Added missing password * Cleaned up * Cleaned up * Cleaned up * Updated to use helpers * Bumped version * Updated helper usage * Added password to variables and a condition * Added check * Indented value * Fixed condition * More updates * Updated variable * Removed settings * Updated delivery api tests * Bumped version * Updated test * Removed unnecessary variables * Updates based on copilot comments * Fixed merge conflict * Fixed env creation step * Bumped version * Updated tests to use new helper * Updated helper * Updated to string * Moved logic to conditions * bumped version * Use new name for helper * Remove echo * Added variable
86 lines
2.5 KiB
TypeScript
86 lines
2.5 KiB
TypeScript
import {defineConfig, devices} from '@playwright/test';
|
|
import * as path from "path";
|
|
|
|
require('dotenv').config();
|
|
|
|
export const STORAGE_STATE = path.join(__dirname, 'playwright/.auth/user.json');
|
|
|
|
export default defineConfig({
|
|
testDir: './tests/',
|
|
/* Maximum time one test can run for. */
|
|
timeout: 30 * 1000,
|
|
expect: {
|
|
/**
|
|
* Maximum time expect() should wait for the condition to be met.
|
|
* For example in `await expect(locator).toHaveText();`
|
|
*/
|
|
timeout: 5000
|
|
},
|
|
/* Fail the build on CI if you accidentally left test.only in the source code. */
|
|
forbidOnly: !!process.env.CI,
|
|
/* Retry on CI only */
|
|
retries: 2,
|
|
// We don't want to run parallel, as tests might differ in state
|
|
workers: 1,
|
|
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
|
//reporter: process.env.CI ? 'line' : 'html',
|
|
reporter: process.env.CI ? [['line'], ['junit', {outputFile: 'results/results.xml'}]] : 'html',
|
|
outputDir: "./results",
|
|
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
|
use: {
|
|
/* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */
|
|
actionTimeout: 0,
|
|
// When working locally it can be a good idea to use trace: 'on-first-retry' instead of 'retain-on-failure', it can cut the local test times in half.
|
|
trace: 'retain-on-failure',
|
|
ignoreHTTPSErrors: true,
|
|
testIdAttribute: 'data-mark'
|
|
},
|
|
|
|
/* Configure projects for major browsers */
|
|
projects: [
|
|
// Setup project
|
|
{
|
|
name: 'setup',
|
|
testMatch: '**/*.setup.ts',
|
|
},
|
|
{
|
|
name: 'defaultConfig',
|
|
testMatch: 'DefaultConfig/**',
|
|
dependencies: ['setup'],
|
|
use: {
|
|
...devices['Desktop Chrome'],
|
|
// Use prepared auth state.
|
|
ignoreHTTPSErrors: true,
|
|
storageState: STORAGE_STATE
|
|
}
|
|
},
|
|
{
|
|
name: 'deliveryApi',
|
|
testMatch: 'DeliveryApi/**',
|
|
dependencies: ['setup'],
|
|
use: {
|
|
...devices['Desktop Chrome'],
|
|
// Use prepared auth state.
|
|
ignoreHTTPSErrors: true,
|
|
storageState: STORAGE_STATE
|
|
},
|
|
},
|
|
{
|
|
name: 'externalLoginAzureADB2C',
|
|
testMatch: 'ExternalLogin/AzureADB2C/**',
|
|
use: {
|
|
...devices['Desktop Chrome'],
|
|
ignoreHTTPSErrors: true,
|
|
}
|
|
},
|
|
// This project is used to test the install steps, for that we do not need to authenticate.
|
|
{
|
|
name: 'unattendedInstallConfig',
|
|
testMatch: 'UnattendedInstallConfig/**',
|
|
use: {
|
|
...devices['Desktop Chrome']
|
|
}
|
|
}
|
|
],
|
|
});
|