https://github.com/echoxiawan/aitestcase
A生成测试用例:基于页面和需求文档内容结合自动生成测试用例,解决单个需求文档生成测试用例质量较差的问题。Test Case Generation: Automatically generate test cases based on the current page and requirement document content, solving the problem of poor quality test cases generated from a single requirement document.
https://github.com/echoxiawan/aitestcase
ai deepseek gpt testcase
Last synced: 3 months ago
JSON representation
A生成测试用例:基于页面和需求文档内容结合自动生成测试用例,解决单个需求文档生成测试用例质量较差的问题。Test Case Generation: Automatically generate test cases based on the current page and requirement document content, solving the problem of poor quality test cases generated from a single requirement document.
- Host: GitHub
- URL: https://github.com/echoxiawan/aitestcase
- Owner: Echoxiawan
- License: gpl-3.0
- Created: 2025-03-23T07:43:24.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2025-04-07T07:42:09.000Z (9 months ago)
- Last Synced: 2025-04-07T08:28:32.886Z (9 months ago)
- Topics: ai, deepseek, gpt, testcase
- Language: Python
- Homepage:
- Size: 520 KB
- Stars: 11
- Watchers: 1
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AITestCase
[English ](doc/README_EN.md) | [中文](doc/README_CN.md)
A tool for generating test cases based on the current webpage and requirement documents.
## Features
- 📋 **Test Case Generation**: Automatically generate test cases based on the current page and requirement document content, solving the problem of poor quality test cases generated from a single requirement document.
- 🔐 **Multiple Login Methods**: Supports login with username/password and cookies.
- 📊 **Excel Export**: Supports exporting test cases to Excel format.
- 📝 **Requirement Association**: Automatically associates test cases with requirement documents.
- 🛠️ **Customizable**: Flexible configuration options to suit different project needs.
- 📄 **Multiple Document Formats**: Supports requirement documents in various formats including plain text, Markdown, and Word (DOCX).
- 🌐 **Web Interface**: Provides a beautiful and user-friendly web interface for easier use.
## Installation Steps
1. Ensure Python 3.9 or higher is installed.
2. Clone or download this repository.
3. Install dependencies:
```
pip install -r requirements.txt
```
4. Install Playwright:
```
playwright install
```
## Usage
### Web Interface
You can use the web interface for a more user-friendly experience:
```bash
# Start the web interface
python main.py --web
```
Then open your browser and navigate to `http://localhost:5000` to access the interface.
> **Note**: You can change the default port by setting the `APP_PORT` environment variable in your `.env` file.

The image above shows the AITestCase web interface where you can configure test parameters such as URL, login method, and requirement documents in a simple and intuitive way.

The image above shows the result page after AITestCase generates test cases, where you can view test results and download the Excel file.
### Basic Usage
### Command Line Usage
```bash
# Basic usage
python main.py --url
# Login with username and password
python main.py --url --username --password
# Login with cookies
python main.py --url --cookies ""
# Use requirements documents (supports .txt, .md, .docx)
python main.py --url --requirements "requirement1.docx,requirement2.md,requirement3.txt"
```
### Cookie Login Support
This tool supports multiple cookie formats:
1. **Key-Value Format** (common in browser developer tools):
```
cookie1=value1; cookie2=value2; JSESSIONID=123456789; auth_token=abcdefg
```
### Example
```bash
# Login with key-value format cookies
python main.py --url https://example.com --cookies "session=abc123; token=xyz789"
```
### Command Line Parameters
```
python main.py --url https://example.com --username user --password pass
```
### Use AI to Identify Login Elements
```
python main.py --url https://example.com --login-url https://example.com/login --username user --password pass --use-ai-login
```
This will use AI to automatically identify form elements on the login page, more accurately locating the login form than traditional methods.
View all available parameters:
```
python main.py --help
```
## Configuration Options
Configuration files are located in the `config/` directory, where you can modify the following settings:
- `settings.py`: General settings
- `user_agents.py`: User agent strings
## Correct Use of Cookie Login
Cookie strings can be in one of the following formats:
1. **Standard Key-Value**:
```
cookieName=cookieValue; otherCookie=otherValue
```
## Open Source License
GPL License
## Troubleshooting
### Cookie Issue Troubleshooting
If you encounter cookie-related issues, try the following steps to troubleshoot:
1. **Check Cookie Format**: Ensure the cookie format is correct, preferably using the browser developer tools to export cookies
```bash
# Copy cookies in Chrome browser
1. Open Developer Tools (F12)
2. Switch to the Application/Network tab
3. Find the cookies or the cookie header in the request
4. Copy the complete cookie string
```
2. **View Detailed Logs**: Modify `config/settings.py` to set the log level to DEBUG
```python
# Set in config/settings.py
LOG_LEVEL = "DEBUG" # Options: DEBUG, INFO, WARNING, ERROR
```
3. **Try Other Login Methods**: If cookie login continues to fail, try username/password login
```bash
python main.py --url https://example.com --username user --password pass
```
### View Browser Interface
If you need to see the browser operation process, use the `--show` parameter:
```bash
python main.py --url https://example.com --cookies "sessionid=abc123" --show true
```
This is particularly useful for debugging cookie and login issues, allowing you to observe the actual behavior and redirection of the browser.
## Documentation Links
- [Usage Guide](doc/USAGE_EN.md)
## WeChat Contact