Skip to content

Commit

Permalink
update tagging (#68)
Browse files Browse the repository at this point in the history
* update tagging

* exclude tags file from sonar coverage

---------

Co-authored-by: jaggarnaut <[email protected]>
  • Loading branch information
pkleybolte and jaggarnaut authored Oct 9, 2024
1 parent 124a1e0 commit 6238882
Show file tree
Hide file tree
Showing 12 changed files with 96 additions and 80 deletions.
4 changes: 4 additions & 0 deletions base/tags.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export const LONG = '@long';
export const SHORT = '@short';
export const STAGE = '@stage';
export const SMOKE = '@smoke';
3 changes: 2 additions & 1 deletion sonar-project.properties
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ sonar.sources=.
sonar.tests=.
sonar.test.inclusions=**/*.spec.ts,**/*.integration-spec.ts
sonar.test.exclusions=**/node_modules/**
sonar.coverage.exclusions=**/*.page.ts,playwright.config.ts,/pages/FromAnywhere.ts,/elements/**/*.ts
# TODO: improve exclusion patterns
sonar.coverage.exclusions=**/*.page.ts,playwright.config.ts,/pages/FromAnywhere.ts,/elements/**/*.ts,base/tags.ts

# Encoding of the source code. Default is default system encoding
sonar.sourceEncoding=UTF-8
7 changes: 4 additions & 3 deletions tests/Klasse.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import { KlasseManagementViewPage } from "../pages/admin/KlasseManagementView.pa
import { faker } from "@faker-js/faker/locale/de";
import { HeaderPage } from "../pages/Header.page";
import { getKlasseId, deleteKlasse } from "../base/api/testHelperOrganisation.page";
import { LONG, SHORT, STAGE } from "../base/tags";

const PW = process.env.PW;
const ADMIN = process.env.USER;
Expand All @@ -34,7 +35,7 @@ test.describe(`Testfälle für die Administration von Klassen: Umgebung: ${proce
});
});

test("Eine Klasse als Landesadmin anlegen und die Klasse anschließend in der Ergebnisliste suchen und dann löschen @long @short @stage", async ({ page }) => {
test("Eine Klasse als Landesadmin anlegen und die Klasse anschließend in der Ergebnisliste suchen und dann löschen", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const KlasseCreationView = new KlasseCreationViewPage(page);
Expand Down Expand Up @@ -73,7 +74,7 @@ test.describe(`Testfälle für die Administration von Klassen: Umgebung: ${proce
});
});

test("Ergebnisliste Klassen als Landesadmin auf Vollständigkeit prüfen @long @short @stage", async ({ page }) => {
test("Ergebnisliste Klassen als Landesadmin auf Vollständigkeit prüfen", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const KlasseManagementView = new KlasseManagementViewPage(page);
Expand All @@ -90,7 +91,7 @@ test.describe(`Testfälle für die Administration von Klassen: Umgebung: ${proce
});
});

test("Eine Klasse als Landesadmin anlegen und die Bestätigungsseite vollständig prüfen @long @stage", async ({ page }) => {
test("Eine Klasse als Landesadmin anlegen und die Bestätigungsseite vollständig prüfen", {tag: [LONG, STAGE]}, async ({ page }) => {
const KlasseCreationView = new KlasseCreationViewPage(page);
const DIENSTSTELLENNUMMER = '1111111';
const SCHULNAME = "Testschule Schulportal";
Expand Down
13 changes: 7 additions & 6 deletions tests/MenuBar.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import { StartPage } from '../pages/StartView.page';
import { LoginPage } from '../pages/LoginView.page';
import { MenuPage } from '../pages/MenuBar.page';
import { HeaderPage } from "../pages/Header.page";
import { LONG, SHORT, STAGE } from '../base/tags';

const PW = process.env.PW;
const ADMIN = process.env.USER;
Expand All @@ -29,8 +30,8 @@ test.describe(`Testfälle für die Hauptmenue-Leiste: Umgebung: ${process.env.UM
await Header.button_logout.click();
});
});
test('Test der Hauptmenue-Leiste und Untermenues auf Vollständigkeit @long @short @stage', async ({ page }) => {

test('Test der Hauptmenue-Leiste und Untermenues auf Vollständigkeit', {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page)
const MenuBar = new MenuPage(page);

Expand All @@ -47,10 +48,10 @@ test.describe(`Testfälle für die Hauptmenue-Leiste: Umgebung: ${process.env.UM
await expect(MenuBar.menueItem_RolleAnlegen).toBeVisible();
await expect(MenuBar.label_Schulverwaltung).toBeVisible();
await expect(MenuBar.label_Schultraegerverwaltung).toBeVisible();
})
})
})
})

test('Test der Funktion "Zurueck zur Startseite" @long @short @stage', async ({ page }) => {
test('Test der Funktion "Zurueck zur Startseite"', {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page)
const MenuBar = new MenuPage(page);

Expand All @@ -60,5 +61,5 @@ test.describe(`Testfälle für die Hauptmenue-Leiste: Umgebung: ${process.env.UM
await MenuBar.button_BackStartpage.click();
await expect(Startseite.text_h2_Ueberschrift).toBeVisible();
})
})
})
})
35 changes: 18 additions & 17 deletions tests/Person.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { deletePersonen, getPersonId, createPersonWithUserContext } from "../bas
import { getSPId } from "../base/api/testHelperServiceprovider.page";
import { UserInfo } from "../base/api/testHelper.page";
import { addSystemrechtToRolle, deleteRolle } from "../base/api/testHelperRolle.page";
import { LONG, SHORT, STAGE } from "../base/tags";

const PW = process.env.PW;
const ADMIN = process.env.USER;
Expand All @@ -37,7 +38,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Einen Benutzer mit der Rolle Lehrkraft anlegen als Landesadmin und anschließend mit diesem Benutzer anmelden @long @short @stage", async ({
test("Einen Benutzer mit der Rolle Lehrkraft anlegen als Landesadmin und anschließend mit diesem Benutzer anmelden", {tag: [LONG, SHORT, STAGE]}, async ({
page,
}) => {
const Landing = new LandingPage(page);
Expand Down Expand Up @@ -112,7 +113,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Einen Benutzer mit der Rolle Landesadmin anlegen @long @short @stage", async ({ page }) => {
test("Einen Benutzer mit der Rolle Landesadmin anlegen", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
Expand Down Expand Up @@ -156,7 +157,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Einen Benutzer mit der Rolle LiV anlegen als Landesadmin @long @short @stage", async ({ page }) => {
test("Einen Benutzer mit der Rolle LiV anlegen als Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
Expand Down Expand Up @@ -201,7 +202,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Einen Benutzer mit der Rolle Schuladmin anlegen als Landesadmin @long @short @stage", async ({ page }) => {
test("Einen Benutzer mit der Rolle Schuladmin anlegen als Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
Expand Down Expand Up @@ -244,7 +245,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Einen Benutzer mit der Rolle SuS anlegen als Landesadmin @long @short @stage", async ({ page }) => {
test("Einen Benutzer mit der Rolle SuS anlegen als Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
Expand Down Expand Up @@ -290,7 +291,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Ergebnisliste Benutzer auf Vollständigkeit prüfen als Landesadmin @long @short @stage", async ({page }) => {
test("Ergebnisliste Benutzer auf Vollständigkeit prüfen als Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({page }) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonManagementView = new PersonManagementViewPage(page);
Expand All @@ -313,7 +314,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Prüfung auf korrekte Rollen in dem Dropdown 'Rolle' nach Auswahl der Organisation bei Anlage eines Benutzer in der Rolle Landesadmin @long @short @stage", async ({page}) => {
test("Prüfung auf korrekte Rollen in dem Dropdown 'Rolle' nach Auswahl der Organisation bei Anlage eines Benutzer in der Rolle Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({page}) => {
const Startseite = new StartPage(page);
const Menue = new MenuPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
Expand Down Expand Up @@ -386,7 +387,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("In der Ergebnisliste die Suchfunktion ausführen als Landesadmin @long @short @stage", async ({ page }) => {
test("In der Ergebnisliste die Suchfunktion ausführen als Landesadmin", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const PersonManagementView = new PersonManagementViewPage(page);
const PersonCreationView = new PersonCreationViewPage(page);

Expand Down Expand Up @@ -455,7 +456,7 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
});
});

test("Eine Lehrkraft anlegen in der Rolle Landesadmin und die Bestätigungsseite vollständig prüfen @long @short @stage", async ({ page }) => {
test("Eine Lehrkraft anlegen in der Rolle Landesadmin und die Bestätigungsseite vollständig prüfen", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const PersonCreationView = new PersonCreationViewPage(page);
const Rolle = "Lehrkraft";
const Vorname = "TAuto-PW-V-" + faker.person.firstName();
Expand Down Expand Up @@ -504,19 +505,19 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro

await test.step(`Benutzer wieder löschen`, async () => {
Benutzername = await PersonCreationView.data_Benutzername.innerText();
BenutzerID = await getPersonId(page, Benutzername);
BenutzerID = await getPersonId(page, Benutzername);
await deletePersonen(page, BenutzerID);
});
});

test("Mehere Benutzer hintereinander anlegen in der Rolle Landesadmin für die Rollenarten SuS und LEHR und die Bestätigungsseiten vollständig prüfen @long @short @stage", async ({ page }) => {
test("Mehere Benutzer hintereinander anlegen in der Rolle Landesadmin für die Rollenarten SuS und LEHR und die Bestätigungsseiten vollständig prüfen", {tag: [LONG, SHORT, STAGE]}, async ({ page }) => {
const Landing = new LandingPage(page);
const Startseite = new StartPage(page);
const Login = new LoginPage(page);
const Header = new HeaderPage(page);
const PersonCreationView = new PersonCreationViewPage(page);
let userInfo: UserInfo;

await test.step(`Testdaten: Landesadmin anlegen und mit diesem anmelden`, async () => {
const idSP = await getSPId(page, 'Schulportal-Administration');
userInfo = await createPersonWithUserContext(page, 'Land Schleswig-Holstein', 'SYSADMIN', 'TAuto-PW-B-Master', 'TAuto-PW-B-Hans', idSP, 'TAuto-PW-R-RolleSYSADMIN');
Expand All @@ -531,9 +532,9 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
await Landing.button_Anmelden.click();
await Login.login(userInfo.username, userInfo.password);
userInfo.password = await Login.UpdatePW();
await expect(Startseite.text_h2_Ueberschrift).toBeVisible();
await expect(Startseite.text_h2_Ueberschrift).toBeVisible();
});

// Testdaten
const Schulstrukturknoten = "Testschule Schulportal";
const Dienststellennummer = "1111111";
Expand Down Expand Up @@ -696,8 +697,8 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro

await test.step(`Neuen Benutzer über die api anlegen`, async () => {
await createPersonWithUserContext(page, 'Land Schleswig-Holstein', berechtigung, vorname, nachname, idSP, rolle);
})
})

await test.step(`Benutzer wieder löschen über das FE`, async () => {
await page.goto(FRONTEND_URL + "admin/personen");
await PersonManagementView.input_Suchfeld.fill(nachname);
Expand All @@ -708,5 +709,5 @@ test.describe(`Testfälle für die Administration von Personen": Umgebung: ${pro
await PersonDetailsView.button_closeDeletePersonConfirm.click();
await expect(page.getByRole("cell", { name: nachname, exact: true })).toBeHidden();
});
})
})
});
Loading

0 comments on commit 6238882

Please sign in to comment.