| name | testing |
| description | Backend testing strategies and test automation. Unit, integration, E2E, and load testing with best practices. |
| sasmp_version | 2.0.0 |
| bonded_agent | 07-testing-security |
| bond_type | SECONDARY_BOND |
| atomic_operations | ["UNIT_TEST_CREATION","INTEGRATION_TEST_SETUP","E2E_TEST_CONFIGURATION","LOAD_TEST_EXECUTION"] |
| parameter_validation | {"query":{"type":"string","required":true,"minLength":5,"maxLength":2000},"test_type":{"type":"string","enum":["unit","integration","e2e","load","contract"],"required":false}} |
| retry_logic | {"max_attempts":2,"backoff":"exponential","initial_delay_ms":1000} |
| logging_hooks | {"on_invoke":"skill.testing.invoked","on_success":"skill.testing.completed","on_error":"skill.testing.failed"} |
| exit_codes | {"SUCCESS":0,"INVALID_INPUT":1,"TEST_FAILURE":2} |
Testing Skill
Bonded to: testing-security-agent (Secondary)
Quick Start
"Write unit tests for my user service"
"Set up integration tests with database"
"Configure load testing with k6"
Testing Pyramid
/\
/E2E\ Few, slow, expensive
/────\
/Integration\ Some, medium speed
/────────────\
/ Unit Tests \ Many, fast, cheap
/────────────────\
| Type | Coverage | Speed | Cost |
|---|
| Unit | 80%+ | Fast | Low |
| Integration | 60%+ | Medium | Medium |
| E2E | Critical paths | Slow | High |
Examples
Unit Test (pytest)
import pytest
from unittest.mock import Mock
from app.services.user_service import UserService
class TestUserService:
@pytest.fixture
def service(self):
return UserService(db=Mock())
def test_get_user_returns_user(self, service):
service.db.get_user.return_value = {"id": 1, "name": "John"}
result = service.get_user(1)
assert result["name"] == "John"
service.db.get_user.assert_called_once_with(1)
():
service.db.get_user.return_value =
pytest.raises(UserNotFoundError):
service.get_user()