CtrlK
BlogDocsLog inGet started
Tessl Logo

chat-x-unit-test

帮助开发者为 Vue 3 组件编写单元测试。当用户需要添加单元测试时使用。

54

Quality

60%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./bcs-services/bcs-project-manager/.cursor/skills/chat-x-unit-test/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

57%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The content is a compact, actionable test-writing guide with a solid executable template and run commands. Its weaknesses are a duplicated resources section, absent validation/feedback workflow, and references to files that do not exist on disk.

Suggestions

Remove the duplicated '## 📦 可用资源' block so the reference list appears only once, recovering wasted tokens.

Add an explicit feedback loop to the workflow (e.g., '写测试 → 运行 npx vitest run → 修复失败用例 → 重新运行直至全部通过') with a validation checkpoint.

Either create the referenced files under references/ (mock-patterns.md, test-qa.md, test-strategies.md) or remove the broken links, and convert 'skill://' URIs to standard relative markdown links for clear one-level-deep navigation.

DimensionReasoningScore

Conciseness

The body is mostly lean with short sections and no over-explanation of Vue/Vitest basics, but the '## 📦 可用资源' block is duplicated verbatim (lines 53-59 and 62-67), which is padding that should be tightened. This fits 'mostly efficient but includes some unnecessary content that could be tightened' rather than 4's 'minor instances only'.

3 / 5

Actionability

Quotes: executable commands 'pnpm --filter @blueking/chat-x test' and 'npx vitest run src/components/your-component', plus a complete copy-paste TypeScript template with mount/expect. It is a 4 rather than 5 because the '测试分类' list (渲染/Props/事件/Slot) gives only labels with no concrete example per category and only one example test is shown.

4 / 5

Workflow Clarity

The skill provides a template and run commands but no explicit sequence with validation checkpoints — there is no 'write → run → fix failures → rerun until green' feedback loop, which test-writing benefits from. This matches 'steps present but checkpoints missing/implicit' rather than 4's 'clear sequence with most checkpoints'.

3 / 5

Progressive Disclosure

Section headers are clear and well-organized, but the three referenced files (mock-patterns.md, test-qa.md, test-strategies.md) do not exist in any references/ directory, the resources section is duplicated, and the 'skill://' URIs are not clearly signaled as one-level-deep navigation. Per the guideline to score against actual bundle structure, broken references cap this at 'some structure, references present but not clearly signaled'.

3 / 5

Total

13

/

20

Passed

Description

62%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description cleanly states what the skill does and when to use it in third person, with a reasonably distinct Vue 3 niche. Its main weakness is thin trigger-term coverage and only a single concrete action, keeping specificity and trigger quality at mid-range.

Suggestions

Add 1-2 more concrete actions (e.g., mocking dependencies, asserting emitted events, measuring coverage) to lift specificity beyond a single 'write unit tests' action.

Broaden trigger terms with natural synonyms users say — 'vitest', 'spec 文件', '测试用例', '测试覆盖率' — so the skill surfaces for more phrasings.

Make the 'when' clause more concrete with specific scenarios (e.g., '当用户新增/修改 Vue 3 组件需要补充或修复测试时').

DimensionReasoningScore

Specificity

Quotes: '为 Vue 3 组件编写单元测试' names the domain and one concrete action (write unit tests), but lists no further specific actions like mocking, coverage, or assertions — matching the '1-2 concrete actions, not comprehensive' anchor. It is not a 4 because there are not 'several specific actions', and not a 2 because it does name a concrete action rather than only the domain.

3 / 5

Completeness

Quotes: '帮助开发者为 Vue 3 组件编写单元测试' gives a clear 'what', and '当用户需要添加单元测试时使用' gives an explicit 'when' clause (so not capped at 3). It is a 4 rather than 5 because the 'when' is generic and lacks concrete trigger phrases naming specific scenarios.

4 / 5

Trigger Term Quality

Quotes: 'Vue 3 组件', '单元测试', '添加单元测试' give some relevant natural keywords, but it misses common variations/synonyms a user might say (vitest, spec, test coverage, 测试用例). This fits the 'some relevant keywords but missing common variations' anchor rather than 4's 'good keyword coverage'.

3 / 5

Distinctiveness Conflict Risk

Quotes: 'Vue 3 组件...单元测试' carves a fairly distinct Vue 3 unit-testing niche with minor overlap risk against general testing skills. It is not a 5 because the trigger is not highly specific, and not a 3 because the Vue 3 framing clearly narrows it beyond 'somewhat specific'.

4 / 5

Total

14

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
TencentBlueKing/bk-bcs
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.