skills/network-throttling/SKILL.md
# Network Throttling Skill Simulate slow or offline network conditions during user testing. Tests how well sites handle poor connectivity. ## When to Use - Testing loading states and spinners - Validating offline/PWA functionality - Simulating real-world mobile conditions - Testing error handling for slow requests - Pairing with `bad-connection-user` persona ## Network Presets ### slow-3g Simulates a poor mobile connection: | Metric | Value | |--------|-------| | Download | 400 Kbps | | U
npx skillsauth add ncklrs/claude-chrome-user-testing skills/network-throttlingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Simulate slow or offline network conditions during user testing. Tests how well sites handle poor connectivity.
bad-connection-user personaSimulates a poor mobile connection:
| Metric | Value | |--------|-------| | Download | 400 Kbps | | Upload | 400 Kbps | | Latency | 400ms |
Use for: Testing patience thresholds, loading indicators, progressive loading
Simulates a decent mobile connection:
| Metric | Value | |--------|-------| | Download | 1.6 Mbps | | Upload | 750 Kbps | | Latency | 100ms |
Use for: Typical mobile user experience, image loading, API response times
Simulates no network access:
| Metric | Value | |--------|-------| | Download | 0 | | Upload | 0 | | Status | Offline |
Use for: Service worker testing, offline fallbacks, cached content
Network throttling uses Chrome DevTools Protocol:
async (page) => {
const client = await page.context().newCDPSession(page);
await client.send('Network.emulateNetworkConditions', {
offline: false,
downloadThroughput: 50000, // bytes/sec (400 Kbps)
uploadThroughput: 50000,
latency: 400 // ms
});
return 'Network throttling applied';
}
| Speed | Bytes/sec | |-------|-----------| | 400 Kbps | 50,000 | | 750 Kbps | 93,750 | | 1.6 Mbps | 200,000 | | 10 Mbps | 1,250,000 |
When throttling is active, automatically adjust persona timing:
| Network | Patience Multiplier | |---------|---------------------| | normal | 1x | | fast-3g | 1.5x | | slow-3g | 3x | | offline | N/A (expect failures) |
1. Apply slow-3g throttling
2. Navigate to page
3. Observe: Does spinner appear? How long until content?
4. Narrate: "This is taking a while... at least there's a loading indicator."
1. Apply offline throttling
2. Try to navigate
3. Observe: Does site handle gracefully? Cached content?
4. Narrate: "Nothing's loading. Let me check if there's an offline mode..."
1. Apply fast-3g throttling
2. Navigate to image-heavy page
3. Observe: Do images load progressively? Placeholders?
4. Narrate: "The text loaded first, images are still coming in..."
When network throttling is used, include in report:
## Session Overview
- **Network**: slow-3g (400 Kbps, 400ms latency)
## Network Experience
### Loading Performance
- Page load time: ~8 seconds
- First meaningful paint: ~3 seconds
- Loading indicator: Yes/No
### Issues Under Throttling
- [List issues exacerbated by slow network]
### Positive Behaviors
- [What the site did well under poor conditions]
Most realistic mobile testing:
/user-test --url https://example.com --persona genz-digital-native --viewport mobile --network slow-3g
Tests: Real-world mobile conditions where users are impatient AND on poor connections.
Full experience simulation:
/user-test --url https://example.com --persona bad-connection-user --network slow-3g
The bad-connection-user persona already has higher patience for slow loads. Adding actual throttling makes the simulation realistic.
development
# WCAG Auditor Skill This skill provides WCAG 2.1 accessibility audit capabilities, including criteria definitions, check implementations, and scoring logic. ## Purpose Systematically evaluate web pages against WCAG 2.1 Level A and AA success criteria to identify accessibility barriers and provide remediation guidance. ## WCAG 2.1 Overview WCAG is organized around four principles (POUR): - **Perceivable**: Information must be presentable to users - **Operable**: Interface must be usable - *
development
Comprehensive persona-based user testing skill for web applications. Simulates how real users from different demographics interact with interfaces, including realistic timing, behavioral patterns, and frustration triggers. Use when: - Testing user interfaces before release - Validating UX flows from diverse perspectives - Conducting accessibility reviews - Optimizing onboarding or checkout experiences - Getting feedback on form design
development
# Stripe Checkout Testing Skill This skill provides guidance for testing Stripe checkout flows with any persona. It handles test card data, form detection, and payment-specific narration. ## Purpose Enable realistic user testing of Stripe payment flows using official test cards, with persona-appropriate reactions to checkout experiences. ## Test Card Reference Load card data from `test-cards.json`. Key scenarios: | Scenario | Card | When to Use | |----------|------|-------------| | `succes
testing
# Smoke Testing Skill Run pre-configured smoke tests for common user flows. Quick validation that critical functionality works. ## What is Smoke Testing? Smoke testing is a quick sanity check to ensure basic functionality works before deeper testing. The name comes from electronics - if you turn on a circuit and smoke comes out, you know something is wrong without further testing. ## When to Use - Before releases to catch obvious breaks - After deployments to verify functionality - In CI/CD