mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-10-12 17:51:36 +08:00
feat: setup end to end test framework for playwright (#4003)
* feat: setup end to end test framework for playwright * fix: remove github workflow
This commit is contained in:
parent
bc72b5fcea
commit
fe75f6347b
10
.gitignore
vendored
10
.gitignore
vendored
@ -37,7 +37,7 @@ frontend/src/constants/env.ts
|
|||||||
**/locust-scripts/__pycache__/
|
**/locust-scripts/__pycache__/
|
||||||
**/__debug_bin
|
**/__debug_bin
|
||||||
|
|
||||||
frontend/.env
|
.env
|
||||||
pkg/query-service/signoz.db
|
pkg/query-service/signoz.db
|
||||||
|
|
||||||
pkg/query-service/tests/test-deploy/data/
|
pkg/query-service/tests/test-deploy/data/
|
||||||
@ -53,3 +53,11 @@ ee/query-service/tests/test-deploy/data/
|
|||||||
bin/
|
bin/
|
||||||
|
|
||||||
*/query-service/queries.active
|
*/query-service/queries.active
|
||||||
|
|
||||||
|
# e2e
|
||||||
|
|
||||||
|
e2e/node_modules/
|
||||||
|
e2e/test-results/
|
||||||
|
e2e/playwright-report/
|
||||||
|
e2e/blob-report/
|
||||||
|
e2e/playwright/.cache/
|
14
e2e/package.json
Normal file
14
e2e/package.json
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"name": "e2e",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"main": "index.js",
|
||||||
|
"license": "MIT",
|
||||||
|
"devDependencies": {
|
||||||
|
"@playwright/test": "^1.22.0",
|
||||||
|
"@types/node": "^20.9.2"
|
||||||
|
},
|
||||||
|
"scripts": {},
|
||||||
|
"dependencies": {
|
||||||
|
"dotenv": "8.2.0"
|
||||||
|
}
|
||||||
|
}
|
33
e2e/playwright.config.ts
Normal file
33
e2e/playwright.config.ts
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
import { defineConfig, devices } from "@playwright/test";
|
||||||
|
import dotenv from "dotenv";
|
||||||
|
|
||||||
|
dotenv.config();
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
|
testDir: "./tests",
|
||||||
|
|
||||||
|
fullyParallel: true,
|
||||||
|
|
||||||
|
forbidOnly: !!process.env.CI,
|
||||||
|
|
||||||
|
name: "Signoz E2E",
|
||||||
|
|
||||||
|
retries: process.env.CI ? 2 : 0,
|
||||||
|
|
||||||
|
reporter: process.env.CI ? "github" : "list",
|
||||||
|
|
||||||
|
preserveOutput: "always",
|
||||||
|
|
||||||
|
updateSnapshots: "all",
|
||||||
|
|
||||||
|
quiet: false,
|
||||||
|
|
||||||
|
testMatch: ["**/*.spec.ts"],
|
||||||
|
|
||||||
|
use: {
|
||||||
|
trace: "on-first-retry",
|
||||||
|
|
||||||
|
baseURL:
|
||||||
|
process.env.PLAYWRIGHT_TEST_BASE_URL || "https://stagingapp.signoz.io/",
|
||||||
|
},
|
||||||
|
});
|
33
e2e/tests/login.spec.ts
Normal file
33
e2e/tests/login.spec.ts
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
import { test, expect } from "@playwright/test";
|
||||||
|
import ROUTES from "../../frontend/src/constants/routes";
|
||||||
|
import dotenv from "dotenv";
|
||||||
|
|
||||||
|
dotenv.config();
|
||||||
|
|
||||||
|
test("E2E Login Test", async ({ page }) => {
|
||||||
|
await Promise.all([page.goto("/"), page.waitForRequest("**/version")]);
|
||||||
|
|
||||||
|
const signup = "Monitor your applications. Find what is causing issues.";
|
||||||
|
|
||||||
|
const el = await page.locator(`text=${signup}`);
|
||||||
|
|
||||||
|
expect(el).toBeVisible();
|
||||||
|
|
||||||
|
await page
|
||||||
|
.locator("id=loginEmail")
|
||||||
|
.type(
|
||||||
|
process.env.PLAYWRIGHT_USERNAME ? process.env.PLAYWRIGHT_USERNAME : ""
|
||||||
|
);
|
||||||
|
|
||||||
|
await page.getByText("Next").click();
|
||||||
|
|
||||||
|
await page
|
||||||
|
.locator('input[id="currentPassword"]')
|
||||||
|
.fill(
|
||||||
|
process.env.PLAYWRIGHT_PASSWORD ? process.env.PLAYWRIGHT_PASSWORD : ""
|
||||||
|
);
|
||||||
|
|
||||||
|
await page.locator('button[data-attr="signup"]').click();
|
||||||
|
|
||||||
|
await expect(page).toHaveURL(ROUTES.APPLICATION);
|
||||||
|
});
|
46
e2e/yarn.lock
Normal file
46
e2e/yarn.lock
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||||
|
# yarn lockfile v1
|
||||||
|
|
||||||
|
|
||||||
|
"@playwright/test@^1.22.0":
|
||||||
|
version "1.40.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.40.0.tgz#d06c506977dd7863aa16e07f2136351ecc1be6ed"
|
||||||
|
integrity sha512-PdW+kn4eV99iP5gxWNSDQCbhMaDVej+RXL5xr6t04nbKLCBwYtA046t7ofoczHOm8u6c+45hpDKQVZqtqwkeQg==
|
||||||
|
dependencies:
|
||||||
|
playwright "1.40.0"
|
||||||
|
|
||||||
|
"@types/node@^20.9.2":
|
||||||
|
version "20.9.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.9.2.tgz#002815c8e87fe0c9369121c78b52e800fadc0ac6"
|
||||||
|
integrity sha512-WHZXKFCEyIUJzAwh3NyyTHYSR35SevJ6mZ1nWwJafKtiQbqRTIKSRcw3Ma3acqgsent3RRDqeVwpHntMk+9irg==
|
||||||
|
dependencies:
|
||||||
|
undici-types "~5.26.4"
|
||||||
|
|
||||||
|
dotenv@8.2.0:
|
||||||
|
version "8.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a"
|
||||||
|
integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==
|
||||||
|
|
||||||
|
fsevents@2.3.2:
|
||||||
|
version "2.3.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
|
||||||
|
integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
|
||||||
|
|
||||||
|
playwright-core@1.40.0:
|
||||||
|
version "1.40.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.40.0.tgz#82f61e5504cb3097803b6f8bbd98190dd34bdf14"
|
||||||
|
integrity sha512-fvKewVJpGeca8t0ipM56jkVSU6Eo0RmFvQ/MaCQNDYm+sdvKkMBBWTE1FdeMqIdumRaXXjZChWHvIzCGM/tA/Q==
|
||||||
|
|
||||||
|
playwright@1.40.0:
|
||||||
|
version "1.40.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.40.0.tgz#2a1824b9fe5c4fe52ed53db9ea68003543a99df0"
|
||||||
|
integrity sha512-gyHAgQjiDf1m34Xpwzaqb76KgfzYrhK7iih+2IzcOCoZWr/8ZqmdBw+t0RU85ZmfJMgtgAiNtBQ/KS2325INXw==
|
||||||
|
dependencies:
|
||||||
|
playwright-core "1.40.0"
|
||||||
|
optionalDependencies:
|
||||||
|
fsevents "2.3.2"
|
||||||
|
|
||||||
|
undici-types@~5.26.4:
|
||||||
|
version "5.26.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
|
||||||
|
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==
|
Loading…
x
Reference in New Issue
Block a user