Skip to content

Performance regression on jest tests after upgrading to Angular 19 #1899

Open
@Abreuvoir

Description

@Abreuvoir

Describe the Bug

Since we upgraded to Angular 19, with @angular-builders/jest 19 too, we have a huge performance regression. Locally and in our CI of our project, tests went from around 2 minutes of execution time to 15 minutes.

Minimal Reproduction

Example of a test that now takes between 8-10s to execute:

import { createComponentFactory, Spectator } from '@ngneat/spectator/jest';

import { BreadcrumbItemComponent } from './breadcrumb-item.component';

describe(BreadcrumbItemComponent.name, () => {
  let spectator: Spectator<BreadcrumbItemComponent>;

  const createComponent = createComponentFactory({
    component: BreadcrumbItemComponent,
    declareComponent: false
  });

  beforeEach(() => {
    spectator = createComponent();

    spectator.detectChanges();
  });

  it('should create', () => {
    expect(spectator.component).toBeTruthy();
  });
});
import {
  ChangeDetectionStrategy,
  Component,
  ViewEncapsulation
} from '@angular/core';

@Component({
  selector: 'breadcrumb-item',
  template: `<ng-content />`,
  changeDetection: ChangeDetectionStrategy.OnPush,
  encapsulation: ViewEncapsulation.None
})
export class BreadcrumbItemComponent {}

But the issue is noticeable on a scale, however i am not sure what to give more here without having to share company code.

Expected Behavior

Same performance as before

Screenshots

image

Environment


Libs
- @angular/core version: 19.0.5
- @angular-devkit/build-angular version: 19.0.6
- @angular-builders/jest version: 19.0.0

For Tooling issues:
- Node version: 22.11.0
- Platform:  Windows, and Jenkins on Openshift
Others:
We are using @ngneat/spectator@19.1.2 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions