Community程式設計與開發github.com

analogjs/angular-testing

使用 Vitest 或 Jasmine 搭配 TestBed 與現代測試模式,為 Angular v20+ 應用程式編寫單元測試與整合測試。適用於測試使用 Signals、OnPush 變更偵測、inject() 服務以及 HTTP 互動的元件。

angular-testing 是什麼?

此技能專為開發者設計,用於在 Angular v20+ 應用程式中建立單元測試與整合測試。它支援主流測試框架,如 Vitest 和 Jasmine,並利用業界標準的 TestBed 工具以及現代化的測試模式,例如針對 Signals、OnPush 變更偵測策略、使用 inject() 的服務以及 HTTP 互動進行測試。當開發者需要建立新測試、測試基於 Signal 的元件、模擬相依性或是設定測試基礎設施時,會觸發此技能。主要目的是提供結構化的指導,確保測試涵蓋元件邏輯、服務行為以及 HTTP 呼叫,而不用於處理端到端(E2E)測試(如 Cypress 或 Playwright)或測試非 Angular 的 JavaScript/TypeScript 程式碼。

相容平台~Claude Code~Codex CLI~Cursor
Part ofReact
npx skills add https://github.com/analogjs/angular-skills/tree/main/skills/angular-testing

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

angular-testing 是做什麼的?

使用 Vitest 或 Jasmine 搭配 TestBed 與現代測試模式,為 Angular v20+ 應用程式編寫單元測試與整合測試。適用於測試使用 Signals、OnPush 變更偵測、inject() 服務以及 HTTP 互動的元件。在建立測試、測試基於 Signal 的元件、模擬相依性或設定測試基礎設施時觸發。請勿用於使用 Cypress 或 Playwright 的端到端(E2E)測試,或測試非 Angular 的 JavaScript/TypeScript 程式碼。

Individual skills in this repo

This repo contains 9 individual skills — each has its own dedicated page.

analogjs/angular-component

Create modern Angular standalone components following v20+ best practices. Use for building UI components with signal-based inputs/outputs, OnPush change detection, host bindings, content projection, and lifecycle hooks. Triggers on component creation, refactoring class-based inputs to signals, adding host bindings, or implementing accessible interactive components.

analogjs/angular-di

Implement dependency injection in Angular v20+ using inject(), injection tokens, and provider configuration. Use for service architecture, providing dependencies at different levels, creating injectable tokens, and managing singleton vs scoped services. Triggers on service creation, configuring providers, using injection tokens, or understanding DI hierarchy.

analogjs/angular-directives

Create custom directives in Angular v20+ for DOM manipulation and behavior extension. Use for attribute directives that modify element behavior/appearance, structural directives for portals/overlays, and host directives for composition. Triggers on creating reusable DOM behaviors, extending element functionality, or composing behaviors across components. Note - use native @if/@for/@switch for control flow, not custom structural directives.

analogjs/angular-forms

Build signal-based forms in Angular v21+ using the new Signal Forms API. Use for form creation with automatic two-way binding, schema-based validation, field state management, and dynamic forms. Triggers on form implementation, adding validation, creating multi-step forms, or building forms with conditional fields. Signal Forms are experimental but recommended for new Angular projects. Don't use for template-driven forms without signals or third-party form libraries like Formly or ngx-formly.

analogjs/angular-http

Implement HTTP data fetching in Angular v20+ using resource(), httpResource(), and HttpClient. Use for API calls, data loading with signals, request/response handling, and interceptors. Triggers on data fetching, API integration, loading states, error handling, or converting Observable-based HTTP to signal-based patterns.

analogjs/angular-routing

Implement routing in Angular v20+ applications with lazy loading, functional guards, resolvers, and route parameters. Use for navigation setup, protected routes, route-based data loading, and nested routing. Triggers on route configuration, adding authentication guards, implementing lazy loading, or reading route parameters with signals.

analogjs/angular-signals

Implement signal-based reactive state management in Angular v20+. Use for creating reactive state with signal(), derived state with computed(), dependent state with linkedSignal(), and side effects with effect(). Triggers on state management questions, converting from BehaviorSubject/Observable patterns to signals, or implementing reactive data flows.

analogjs/angular-ssr

Implement server-side rendering and hydration in Angular v20+ using @angular/ssr. Use for SSR setup, hydration strategies, prerendering static pages, and handling browser-only APIs. Triggers on SSR configuration, fixing hydration mismatches, prerendering routes, or making code SSR-compatible.

analogjs/angular-tooling

Use Angular CLI and development tools effectively in Angular v20+ projects. Use for project setup, code generation, building, testing, and configuration. Triggers on creating new projects, generating components/services/modules, configuring builds, running tests, or optimizing production builds. Don't use for Nx workspace commands, custom Webpack configurations, or non-Angular CLI build systems like Vite standalone or esbuild direct usage.

相關技能