diff --git a/alfa-client/apps/admin-e2e/src/components/statistik/statistik-fields-form.e2e.component.ts b/alfa-client/apps/admin-e2e/src/components/statistik/statistik-fields-form.e2e.component.ts
index 10e22808cd9264192ab815c057403bbe883d4adc..8936e02edbe69c765364304bc497d2be61a970da 100644
--- a/alfa-client/apps/admin-e2e/src/components/statistik/statistik-fields-form.e2e.component.ts
+++ b/alfa-client/apps/admin-e2e/src/components/statistik/statistik-fields-form.e2e.component.ts
@@ -5,9 +5,9 @@ export class StatistikFieldsFormE2EComponent {
   private readonly formIdInput: string = 'form-id-text-input';
   private readonly formDataFieldInput: string = 'mapping-field-';
   private readonly addDataFieldButton: string = 'add-mapping-button';
-  private readonly deleteDataFieldButtonPrefix: string = 'remove-mapping-';
+  private readonly deleteDataFieldButtonPrefix: string = 'remove-mapping-button-';
   private readonly saveButton: string = 'save-button';
-  private readonly cancelButton: string = 'cancel-routing-button';
+  private readonly cancelButton: string = 'cancel-button';
 
   public getFormEngineInput(): Cypress.Chainable<Element> {
     return cy.getTestElement(this.formEngineInput);
@@ -42,7 +42,7 @@ export class StatistikFieldsFormE2EComponent {
   }
 
   public getDataFieldDeleteButton(index: number): Cypress.Chainable<Element> {
-    return cy.getTestElement(this.deleteDataFieldButtonPrefix + index + '-button');
+    return cy.getTestElement(this.deleteDataFieldButtonPrefix + index);
   }
 
   public deleteDataField(index: number): void {
diff --git a/alfa-client/apps/admin-e2e/src/components/statistik/statistik.e2e.component.ts b/alfa-client/apps/admin-e2e/src/components/statistik/statistik.e2e.component.ts
index 44ee45b83d9cf9d8fe6986c1b3e45d4e720779a3..b7467232f5d596a2984bc109e84180810c5e8dc3 100644
--- a/alfa-client/apps/admin-e2e/src/components/statistik/statistik.e2e.component.ts
+++ b/alfa-client/apps/admin-e2e/src/components/statistik/statistik.e2e.component.ts
@@ -1,6 +1,6 @@
 export class StatistikE2EComponent {
   private readonly locatorHeaderText: string = 'statistik-header-text';
-  private readonly locatorWeitereFelderAuswertenButton = 'weitere-felder-auswerten-routing-button';
+  private readonly locatorWeitereFelderAuswertenButton = 'weitere-felder-auswerten-button';
 
   public getHeaderText(): Cypress.Chainable<Element> {
     return cy.getTestElement(this.locatorHeaderText);
diff --git a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/daria.cy.ts b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/daria.cy.ts
index 57867568976e5deb0675a0ccd3fc52f9e5e19d79..33a06a73b83c3a839b0490f96aa17ddb42106994 100644
--- a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/daria.cy.ts
+++ b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/daria.cy.ts
@@ -1,5 +1,5 @@
 import { MainPage, waitForSpinnerToDisappear } from 'apps/admin-e2e/src/page-objects/main.po';
-import { exist, notExist } from 'apps/admin-e2e/src/support/cypress.util';
+import { exist, notExist, visible } from 'apps/admin-e2e/src/support/cypress.util';
 import { loginAsDaria } from 'apps/admin-e2e/src/support/user-util';
 import { StatistikE2EComponent } from '../../../components/statistik/statistik.e2e.component';
 
@@ -37,7 +37,7 @@ describe('Navigation', () => {
       });
 
       it('should show header text', () => {
-        statistikPage.isHeaderTextVisible();
+        visible(statistikPage.getHeaderText());
       });
     });
   });
diff --git a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts
index 6f76dafdfc3161646383b34465056c2e751fa33c..005da2e5a576948787fdeb1f26165bd250b22138 100644
--- a/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts
+++ b/alfa-client/apps/admin-e2e/src/e2e/main-tests/navigation/safira.cy.ts
@@ -1,5 +1,5 @@
 import { MainPage, waitForSpinnerToDisappear } from 'apps/admin-e2e/src/page-objects/main.po';
-import { exist } from 'apps/admin-e2e/src/support/cypress.util';
+import { exist, visible } from 'apps/admin-e2e/src/support/cypress.util';
 import { loginAsSafira } from 'apps/admin-e2e/src/support/user-util';
 import { StatistikE2EComponent } from '../../../components/statistik/statistik.e2e.component';
 
@@ -38,7 +38,7 @@ describe('Navigation', () => {
         });
 
         it('should show page on selection', () => {
-          statistikPage.isHeaderTextVisible();
+          visible(statistikPage.getHeaderText());
         });
 
         it('should mark navigation item as selected', () => {
diff --git a/alfa-client/libs/admin/shared/src/lib/admin-cancel-button/admin-cancel-button.component.html b/alfa-client/libs/admin/shared/src/lib/admin-cancel-button/admin-cancel-button.component.html
index 699dd5d88c94496cf579bbc54518379d46a9d148..3125fbdfd9242e48e3a30a5891e445bb6d8b8498 100644
--- a/alfa-client/libs/admin/shared/src/lib/admin-cancel-button/admin-cancel-button.component.html
+++ b/alfa-client/libs/admin/shared/src/lib/admin-cancel-button/admin-cancel-button.component.html
@@ -1,3 +1,3 @@
-<ods-routing-button [linkPath]="linkPath" text="Abbrechen" variant="outline" dataTestId="cancel">
+<ods-routing-button [linkPath]="linkPath" text="Abbrechen" variant="outline" dataTestId="cancel-button">
   <ods-close-icon icon class="fill-primary" />
 </ods-routing-button>
diff --git a/alfa-client/libs/admin/shared/src/lib/admin-delete-open-dialog-button/admin-delete-open-dialog-button.component.html b/alfa-client/libs/admin/shared/src/lib/admin-delete-open-dialog-button/admin-delete-open-dialog-button.component.html
index 3577b2352dcfb4450a36e0726ae4d47b34d80ed4..c006d95c841f7f9686e98a762901b99511a7e101 100644
--- a/alfa-client/libs/admin/shared/src/lib/admin-delete-open-dialog-button/admin-delete-open-dialog-button.component.html
+++ b/alfa-client/libs/admin/shared/src/lib/admin-delete-open-dialog-button/admin-delete-open-dialog-button.component.html
@@ -1,3 +1,3 @@
-<ods-open-dialog-button variant='outline_error' label="Löschen" dataTestId="delete-button" >
+<ods-open-dialog-button variant="outline_error" label="Löschen" dataTestId="delete-button">
   <ods-delete-icon icon />
-</ods-open-dialog-button>
\ No newline at end of file
+</ods-open-dialog-button>
diff --git a/alfa-client/libs/admin/shared/src/lib/admin-save-button/admin-save-button.component.html b/alfa-client/libs/admin/shared/src/lib/admin-save-button/admin-save-button.component.html
index af15df102e37aa799270f30ae0b3a0f488334fda..8bd6a5f92932e22006b3b8e2cb353a9c3fa93eb1 100644
--- a/alfa-client/libs/admin/shared/src/lib/admin-save-button/admin-save-button.component.html
+++ b/alfa-client/libs/admin/shared/src/lib/admin-save-button/admin-save-button.component.html
@@ -1 +1,6 @@
-<ods-button-with-spinner (clickEmitter)="submit()" text="Speichern" dataTestId="save" [stateResource]="stateResource$ | async" />
+<ods-button-with-spinner
+  (clickEmitter)="submit()"
+  text="Speichern"
+  dataTestId="save-button"
+  [stateResource]="stateResource$ | async"
+/>
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
index de734eb765d9ed6180e7ebcd33a2f6f20944e703..1fd0441a39d71372d0c65fd84d0ce5386ac52fd2 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-container/statistik-container.component.html
@@ -28,7 +28,7 @@
   <ods-routing-button
     [linkPath]="ROUTES.STATISTIK_NEU"
     text="Weitere Felder auswerten"
-    dataTestId="weitere-felder-auswerten"
+    dataTestId="weitere-felder-auswerten-button"
   ></ods-routing-button>
 </div>
 
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/admin-statistik-fields-form.component.html b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/admin-statistik-fields-form.component.html
index 088a142053470d2b1efdf4add3e5cb670b36c22d..ce24e7184c9f832dec08b205237303ce3cd25af7 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/admin-statistik-fields-form.component.html
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/admin-statistik-fields-form.component.html
@@ -22,7 +22,7 @@
   </form>
   <ods-button
     text="Datenfeld hinzufügen"
-    dataTestId="add-mapping"
+    dataTestId="add-mapping-button"
     data-test-id="add-mapping"
     (clickEmitter)="formService.addMapping()"
   >
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.html b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.html
index 19185cc85aeb0a59d96b10028d03903629f69309..569fc993f66170c76ad2cad6c28679b36e86e210 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.html
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.html
@@ -19,8 +19,8 @@
         size="fit"
         destructive="true"
         (clickEmitter)="formService.removeMapping(i)"
-        [dataTestId]="'remove-mapping-' + i"
-        [attr.data-test-id]="'remove-mapping-button-' + i"
+        [dataTestId]="'remove-mapping-button-' + i"
+        [attr.data-test-id]="'remove-mapping-' + i"
       >
         <ods-delete-icon icon />
       </ods-button>
diff --git a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.spec.ts b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.spec.ts
index 9d96ff2602f00c3c9cf411446038e810640dc7be..d06746e48f9660298e3c4e2d305a1404cd0e8605 100644
--- a/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.spec.ts
+++ b/alfa-client/libs/admin/statistik/src/lib/statistik-fields-form/statistik-fields-form-mapping/statistik-fields-form-mapping.component.spec.ts
@@ -15,7 +15,7 @@ describe('AdminStatistikFieldsFormMappingComponent', () => {
   let fixture: ComponentFixture<AdminStatistikFieldsFormMappingComponent>;
 
   const mappingField: string = getDataTestIdOf('mapping-field-0');
-  const removeMappingButton: string = getDataTestIdOf('remove-mapping-button-0');
+  const removeMappingButton: string = getDataTestIdOf('remove-mapping-0');
 
   const formBuilder: FormBuilder = new FormBuilder();
 
diff --git a/alfa-client/libs/admin/user/src/lib/user-form/user-form-save-button/user-form-save-button.component.html b/alfa-client/libs/admin/user/src/lib/user-form/user-form-save-button/user-form-save-button.component.html
index 0277da75dbb4169dd33e4927d89702b1105ce9d9..064289aa47b5e6ff3e9e37656407d30cd0d52c8d 100644
--- a/alfa-client/libs/admin/user/src/lib/user-form/user-form-save-button/user-form-save-button.component.html
+++ b/alfa-client/libs/admin/user/src/lib/user-form/user-form-save-button/user-form-save-button.component.html
@@ -3,4 +3,4 @@
   (clickEmitter)="submit()"
   text="Speichern"
   dataTestId="save-button"
-/>
\ No newline at end of file
+/>
diff --git a/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.ts b/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.ts
index 258b5ff47cde864d307881e2ad6e7c8e09c56ccb..98346f3903e1cff4b363c5f4f4dc49243ce84c7d 100644
--- a/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.ts
+++ b/alfa-client/libs/design-component/src/lib/routing-button/routing-button.component.ts
@@ -8,11 +8,7 @@ import { ButtonVariants, buttonVariants } from '@ods/system';
   standalone: true,
   imports: [CommonModule, RouterLink],
   host: { class: 'block' },
-  template: `<a
-    [routerLink]="'/' + linkPath"
-    [attr.data-test-id]="dataTestId + '-routing-button'"
-    [ngClass]="buttonVariants({ size, variant })"
-  >
+  template: `<a [routerLink]="'/' + linkPath" [attr.data-test-id]="dataTestId" [ngClass]="buttonVariants({ size, variant })">
     <ng-content select="[icon]" />
     @if (text) {
       <p class="flex-grow">{{ text }}</p>
diff --git a/alfa-client/libs/design-system/src/lib/button/button.component.ts b/alfa-client/libs/design-system/src/lib/button/button.component.ts
index f41d9d4f6b57e1589c06da0e0737923c2aa9ab0d..c0f7892c3c2c5184571b175dbff2326591415495 100644
--- a/alfa-client/libs/design-system/src/lib/button/button.component.ts
+++ b/alfa-client/libs/design-system/src/lib/button/button.component.ts
@@ -95,7 +95,7 @@ export type ButtonVariants = VariantProps<typeof buttonVariants>;
     [disabled]="isDisabled"
     [attr.aria-disabled]="isDisabled"
     [attr.aria-label]="text"
-    [attr.data-test-id]="dataTestId + '-button'"
+    [attr.data-test-id]="dataTestId"
     (click)="clickEmitter.emit()"
   >
     <ng-content *ngIf="!isLoading" select="[icon]"></ng-content>