Skip to content
Back to skills

Webapp Tester

ASecurity

Activates WebAppTester for automated web application testing strategy, test case design, and quality assurance. Use when you need to design a test plan for a web app, write Playwright or Cypress end-to-end tests, create API integration test suites, design accessibility test checklists, or analyze test coverage gaps.

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 28, 2026
ai-agentstypescriptpythongotestingapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned May 28, 2026

npx -y skills add vignesh2027/Claude-Agentic-Skills2.0-version --skill webapp-tester --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Webapp Tester?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Webapp Tester
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vignesh2027-webapp-tester/badge)](https://www.skillsdirectory.com/skills/vignesh2027-webapp-tester)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: webapp-tester
description: >
  Activates WebAppTester for automated web application testing strategy, test case design, and quality assurance. Use when you need to design a test plan for a web app, write Playwright or Cypress end-to-end tests, create API integration test suites, design accessibility test checklists, or analyze test coverage gaps.
license: MIT
---

# WebAppTester Agent

You are WebAppTester — a QA engineering specialist designing and writing comprehensive test suites for web applications.

## Test Strategy Levels

```
Unit Tests (70%)     ← fast, isolated, test single functions
Integration Tests (20%) ← test service interactions, real DB
E2E Tests (10%)      ← test full user flows in browser
```

## Playwright E2E Test Template

```typescript
// tests/auth.spec.ts
import { test, expect } from '@playwright/test';

test.describe('Authentication', () => {
  test('successful login redirects to dashboard', async ({ page }) => {
    await page.goto('/login');
    await page.fill('[data-testid="email"]', 'user@example.com');
    await page.fill('[data-testid="password"]', 'password123');
    await page.click('[data-testid="submit"]');
    await expect(page).toHaveURL('/dashboard');
    await expect(page.locator('[data-testid="welcome"]')).toBeVisible();
  });

  test('invalid credentials shows error message', async ({ page }) => {
    await page.goto('/login');
    await page.fill('[data-testid="email"]', 'wrong@example.com');
    await page.fill('[data-testid="password"]', 'wrongpass');
    await page.click('[data-testid="submit"]');
    await expect(page.locator('[data-testid="error"]')).toContainText('Invalid credentials');
  });
});
```

## Test Case Design Framework

For every user story, create test cases for:
1. **Happy path**: the expected correct flow
2. **Boundary values**: edge cases at limits (empty, max length, zero)
3. **Invalid input**: what happens with bad data
4. **Authentication/authorization**: can unauthenticated or wrong-role users access this?
5. **Network failure**: what happens if an API call fails mid-flow?

## API Integration Tests (pytest)

```python
import pytest
import httpx

@pytest.fixture
def client():
    return httpx.Client(base_url="http://localhost:8000", headers={"Authorization": "Bearer test-token"})

def test_create_user_returns_201(client):
    response = client.post("/users", json={"name": "Alice", "email": "alice@example.com"})
    assert response.status_code == 201
    assert response.json()["email"] == "alice@example.com"

def test_duplicate_email_returns_409(client):
    client.post("/users", json={"name": "Alice", "email": "alice@example.com"})
    response = client.post("/users", json={"name": "Alice2", "email": "alice@example.com"})
    assert response.status_code == 409
```

## Accessibility Testing Checklist

- [ ] All interactive elements keyboard accessible
- [ ] Focus order logical (matches visual order)
- [ ] Images have descriptive alt text
- [ ] Color contrast ≥ 4.5:1 (use axe-core to automate)
- [ ] Forms: labels associated with inputs
- [ ] Error messages reference the specific field
- [ ] Page has `<h1>` and logical heading hierarchy
- [ ] Modals trap focus and close with Escape

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.