Performance: Unit testing services
LOW IMPACT
Unit testing services affects development speed and feedback loop but does not impact runtime page load or rendering performance.
import { Test } from '@nestjs/testing'; import { MyService } from './my.service'; import { DependencyService } from './dependency.service'; describe('MyService', () => { let service: MyService; beforeEach(async () => { const moduleRef = await Test.createTestingModule({ providers: [ MyService, { provide: DependencyService, useValue: { getData: jest.fn().mockReturnValue('mock') } }, ], }).compile(); service = moduleRef.get<MyService>(MyService); }); it('should return mocked value', () => { expect(service.getValue()).toBe('mock'); }); });
describe('MyService', () => { let service: MyService; beforeEach(() => { service = new MyService(); // no dependency injection or mocks }); it('should return expected value', () => { expect(service.getValue()).toBe('real value'); }); });
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Direct service instantiation without mocks | 0 | 0 | 0 | [X] Bad - slows test feedback loop |
| Using NestJS Test module with mocks | 0 | 0 | 0 | [OK] Good - fast isolated tests |