開発
#javascript
jasmine-skill
Generates Jasmine tests in JavaScript. BDD-style framework with spies and async support. Use when user mentions "Jasmine", "jasmine.createSpy", "toHaveBeenCalled". Triggers on: "Jasmine", "jasmine test", "createSpy", "Jasmine spec".
DeepseekModel
キュレーション済みスキル
品質 優秀 · 78
v1.0.0
取得
https://deepseekmodel.com/api/download.php?id=lambdatest-agent-skills-jasmine-skill-skill-md&format=skill
ダウンロード .skill
標準形式。system_prompt と model_config を収録し、任意の Agent で利用可能
.skill ファイルの system_prompt フィールドの実際の内容。
name jasmine-skill description Generates Jasmine tests in JavaScript. BDD-style framework with spies and async support. Use when user mentions "Jasmine", "jasmine.createSpy", "toHaveBeenCalled". Triggers on: "Jasmine", "jasmine test", "createSpy", "Jasmine spec". languages ["JavaScript","TypeScript"] category unit-testing license MIT metadata {"author":"TestMu AI","version":"1.0"} Jasmine Testing Skill Core Patterns Basic Test describe ( 'Calculator' , () => { let calc; beforeEach ( () => { calc = new Calculator (); }); it ( 'should add two numbers' , () => { expect (calc. add ( 2 , 3 )). toBe ( 5 ); }); it ( 'should throw on divide by zero' , () => { expect ( () => calc. divide ( 10 , 0 )). toThrowError ( 'Division by zero' ); }); }); Matchers expect (value). toBe (exact); // === strict expect (value). toEqual (object); // Deep equality expect (value). toBeTruthy (); expect (value). toBeFalsy (); expect (value). toBeNull (); expect (value). toBeUndefined (); expect (value). toBeDefined (); expect (value). toBeNaN (); expect (value). toBeGreaterThan ( 3 ); expect (value). toBeCloseTo ( 0.3 , 5 ); expect (str). toContain ( 'sub' ); expect (str). toMatch ( /pattern/ ); expect (arr). toContain (item); expect (fn). toThrow (); expect (fn). toThrowError ( 'message' ); // Negation expect (value). not . toBe (other); Spies describe ( 'UserService' , () => { let service, api; beforeEach ( () => { api = jasmine. createSpyObj ( 'api' , [ 'get' , 'post' ]); service = new UserService (api); }); it ( 'fetches user from API' , async () => { api. get . and . returnValue ( Promise . resolve ({ name : 'Alice' })); const user = await service. getUser ( 1 ); expect (user. name ). toBe ( 'Alice' ); expect (api. get ). toHaveBeenCalledWith ( '/users/1' ); expect (api. get ). toHaveBeenCalledTimes ( 1 ); }); }); // Spy on existing method spyOn (obj, 'method' ). and . returnValue ( 42 ); spyOn (obj, 'method' ). and . callThrough (); // Call original spyOn (obj, 'method' ). and . throwError ( 'err' ); Async Testing it ( 'fetches data' , async () => { const data = await fetchData (); expect (data). toBeDefined (); }); // With done callback it ( 'fetches data' , ( done ) => { fetchData (). then ( data => { expect (data). toBeDefined (); done (); }); }); // Clock control beforeEach ( () => { jasmine. clock (). install (); }); afterEach ( () => { jasmine. clock (). uninstall (); }); it ( 'handles timeout' , () => { const callback = jasmine. createSpy (); setTimeout (callback, 1000 ); jasmine. clock (). tick ( 1001 ); expect (callback). toHaveBeenCalled (); }); Setup: npm install jasmine --save-dev && npx jasmine init Run: npx jasmine or npx jasmine spec/calculatorSpec.js Deep Patterns See reference/playbook.md for production-grade patterns: Section What You Get §1 Project Setup jasmine.json, TypeScript, spec reporter config §2 Spies — Complete API spyOn, createSpyObj, callFake, returnValues, call tracking §3 Async Testing async/await, expectAsync, promise matchers §4 Custom Matchers Domain-specific matchers, asymmetric matchers §5 Test Organization Nested describe, shared state, focused/excluded §6 Fetch & Module Mocking globalThis.fetch spy, HTTP error handling §7 Browser Testing DOM creation, keyboard events, focus trapping with Karma §8 CI/CD Integration GitHub Actions with coverage, browser testing §9 Debugging Table 12 common problems with causes and fixes §10 Best Practices 14-item checklist for production Jasmine testing
このスキルを起動するキーワード。クリックでコピーできます。
このスキルにはトリガーワードがありません。
ダウンロードした .skill に含まれるフィールド。
| フィールド | 説明 |
|---|---|
| format | フォーマット識別子(skill/v1) |
| skill_id | スキル固有 ID |
| name | スキル名 |
| version | バージョン |
| description | 説明 |
| category | カテゴリ(配列) |
| trigger_words | トリガーワード |
| tags | タグ |
| source | ソース |
| source_url | ソース URL(本ページ) |
| exported_at | エクスポート日時(ダウンロード毎) |
| system_prompt | システムプロンプト本文 |
| model_config | モデル設定:provider / model / temperature / max_tokens / top_p |
| examples | サンプル |
| install_guide | 各プラットフォームの導入説明(Coze / Dify / Claude / カスタム) |