integration-testing
Automated integration testing with external services using testcontainers, wiremock, localstack. Use when developer needs to set up integration tests for testing with real services in Docker containers via testcontainers, mocking HTTP APIs with WireMock, testing AWS S3 with LocalStack, SFTP integration testing, or setting up complex integration test environments with external dependencies.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/ahmed181283/integration-testingIntegration Testing with External Services
Quick Start
This skill helps you set up integration tests with external services:
- Testcontainers: Run real services in Docker containers for testing
- WireMock: Mock HTTP services and APIs
- LocalStack: Local AWS services (S3) for testing without AWS dependency
- SFTP: Integration testing with SFTP servers
When to Use This Skill
Use this skill when you need to:
- Set up integration tests with external services
- Test applications against real databases/message queues in isolation
- Mock HTTP APIs for reliable testing
- Test S3 integration without using real AWS resources
- Configure automated integration test environments
Setup Options
Testcontainers Setup
For integration tests with real services:
# Basic testcontainers example
from testcontainers.postgres import PostgresContainer
def test_with_postgres():
with PostgresContainer("postgres:15") as postgres:
connection_string = postgres.get_connection_url()
# Run tests with real PostgreSQL
See testcontainers-guide.md for detailed setup.
WireMock Setup
For mocking HTTP services:
# WireMock configuration example
from wiremock import WireMockServer
def test_with_wiremock():
with WireMockServer() as wiremock:
wiremock.stub_for(
request_method="GET",
request_url="/api/users",
response_body='{"users": []}'
)
# Test against mocked API
See wiremock-patterns.md for common patterns.
LocalStack Setup
For testing S3 without AWS:
# LocalStack S3 testing example
import boto3
from localstack import start_localstack
def test_s3_with_localstack():
with start_localstack(services=["s3"]) as localstack:
s3 = boto3.client('s3', endpoint_url=localstack.endpoint_url)
# Test S3 operations locally
See localstack-s3-config.md for S3 configuration.
SFTP Integration Testing
For testing SFTP connectivity and operations:
# SFTP integration test example
from paramiko import SSHClient
def test_sftp_operations():
with SSHClient() as ssh:
ssh.connect('sftp-server', username='test', password='test')
sftp = ssh.open_sftp()
# Test SFTP file operations
Available Templates
Ready-to-use test templates for common scenarios:
templates/testcontainers-python.py- Python testcontainers setuptemplates/wiremock-http-tests.py- WireMock HTTP API teststemplates/localstack-s33-tests.py- LocalStack S3 integration teststemplates/sftp-integration-tests.py- SFTP integration testing
Helper Scripts
Setup scripts to initialize test environments:
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-ahmed181283-integration-testing": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
daily-cinema
Generate daily cinema and film industry content and TikTok scripts using free entertainment news sources. Use when user wants to create content about movie releases, film news, celebrity updates, box office results, or entertainment industry developments from the last 24 hours.
daily-geo-tiktok
Generate daily geopolitical TikTok scripts using free news sources. Use when user wants to create TikTok content about world events, conflicts, diplomacy, or geopolitical developments that happened in the last 24 hours.
defi-yield-optimizer
Professional DeFi yield farming optimizer for tracking and optimizing yields across multiple chains and protocols. Use when user needs to discover high-yield DeFi opportunities, track portfolio performance, calculate ROI, and manage yield farming strategies across Ethereum, Polygon, BSC, Arbitrum, Optimism, and other EVM chains.
daily-worldcup2026
Generate daily FIFA World Cup 2026 content and TikTok scripts using free news sources. Use when user wants to create content about World Cup 2026 preparations, qualifiers, team news, host cities, or tournament developments from the last 24 hours.
daily-technology
Generate daily technology news content and TikTok scripts using free tech news sources. Use when user wants to create content about tech news, product launches, startups, AI developments, or technology industry updates from the last 24 hours.