This project automatically analyses HTML web forms and generates test cases (valid, invalid, boundary, and security checks) to speed up manual QA testing. It is implemented with Flask (backend) and a simple front-end for quick demonstration.
- Parses form inputs (input, textarea, select).
- Generates baseline valid case, single-field negative tests, and combinatorial cases.
- Includes common security payloads (SQLi, XSS) for negative tests.
- Exportable JSON output (ready to feed into automated test harnesses).
- Usability: Simple web UI + JSON output. Demonstrated by quick generation in UI and sample outputs in
examples/. - Performance: Parsing/generation is local and lightweight; combinatorial generation capped (configurable
max_combinations) to avoid blow-up. - Maintainability: Modular
parse_formandgenerate_test_casesfunctions with docstrings; tests intests/.
- Create virtualenv:
python -m venv venv - Activate it:
- Windows:
venv\Scripts\activate - Linux/macOS:
source venv/bin/activate
- Windows:
- Install:
pip install -r requirements.txt - Run app:
python app.py - Open
http://127.0.0.1:5000/in browser.
- Paste your form HTML into the textarea and click Generate.
- Or click Generate to use the sample form (server fallback).
- Output JSON shows
fieldsandtest_cases.
- Add support for
pattern,minlength,maxlengthenforcement in the generator. - Add export to CSV/Excel and a step to run test cases against an endpoint.