在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用testing
星标0
分支0
更新时间2026年1月23日 02:42
테스트 작성 전략, TDD, 테스트 종류별 가이드
安装
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
SKILL.md
readonly菜单
테스트 작성 전략, TDD, 테스트 종류별 가이드
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
디버깅 전략, 로깅 베스트 프랙티스, 에러 추적
REST API 설계 원칙, GraphQL 패턴, API 버저닝
코드 품질 가이드, 클린 코드 원칙, 리팩토링 패턴
기술 문서 작성 가이드, 문서 유형별 템플릿
Git 작업 흐름, 커밋 메시지, 브랜치 전략 가이드
성능 최적화 패턴, 캐싱 전략, 데이터베이스 최적화
| name | testing |
| description | 테스트 작성 전략, TDD, 테스트 종류별 가이드 |
/\
/ \ E2E Tests (few, slow, expensive)
/----\
/ \ Integration Tests
/--------\
/ \ Unit Tests (many, fast, cheap)
/------------\
개별 함수/메서드의 독립적인 테스트
# Good: single function test
test "calculateTotal returns sum of items":
items = [{price: 100}, {price: 200}]
assert calculateTotal(items) == 300
# Good: edge case test
test "calculateTotal returns 0 for empty array":
assert calculateTotal([]) == 0
여러 컴포넌트의 상호작용 테스트
test "user can add item to cart":
user = createUser()
product = createProduct()
addToCart(user.id, product.id)
cart = getCart(user.id)
assert cart.items contains product
전체 시스템의 사용자 시나리오 테스트
test "user can complete checkout flow":
goto("/products")
click("[data-testid=add-to-cart]")
click("[data-testid=checkout]")
fill("input[name=email]", "test@example.com")
click("[data-testid=submit]")
assert current_url contains "/confirmation"
# Step 1: Red - failing test
test "formatCurrency formats number as KRW":
assert formatCurrency(1000) == "₩1,000"
# Step 2: Green - passing code
function formatCurrency(amount):
return "₩" + formatWithCommas(amount)
# Step 3: Refactor - improve if needed
test "given empty cart, when adding item, then cart has one item":
# Given
cart = new Cart()
# When
cart.addItem(product)
# Then
assert length(cart.items) == 1
# Good: clear about what is being tested
test "returns null when user not found"
test "throws error for invalid email format"
test "filters out inactive users"
# Bad: vague or unclear
test "test user"
test "should work"
test "handles edge case"
# Mock example
mockFetch = mock(fetch)
mockFetch.returns({data: "test"})
# Stub example
stub(Date, "now").returns(1234567890)
# Spy example
spy = spyOn(logger, "error")
# ... execute code
assert spy.wasCalledWith("Error message")
code-quality: 클린 코드 원칙debugging: 테스트 실패 분석