Tool to generate simple unit test using openai api
Project description
AITestGen
Python Library to generate unit tests using OpenAI API
Installation
Create a virtual enviroment (Optional)
python -m venv venv
source venv/bin/activate # venv/Scripts/activate on Windows
Install package (require python ^3.11 version)
pip install aitestgen
Add OpenAI API Key (Required)
export OPENAI_API_KEY=<my_api_key> # or add variable in your .env file
Example
Create a python file and add the following code:
from aitestgen.autotest import autotest
@autotest()
def sum(num1: float, num2: float) -> float:
"""This function is responsible for calculating the sum of two numbers"""
return num1 + num2
@autotest()
def mul(num1: float, num2: float) -> float:
"""This function is responsible for calculating the multiplication of two numbers"""
return num1 * num2
Important:
To improve results, add type annotations and documentation to the function.
Generate tests:
Run the following command (change the filename)
aitestgen generate --inputfile src/operations.py
And then you will get the following result in a .py file created in a tests folder:
Result
# Function: mul - test1:
def test_mul_positive_numbers():
assert mul(5.5, 2) == 11.0
# Function: mul - test2:
def test_mul_negative_numbers():
assert mul(-3, 4) == -12.0
# Function: mul - test3:
def test_mul_zero():
assert mul(0, 10) == 0.0
# Function: sum - test1:
def test_sum_positive_numbers():
assert sum(3.5, 2.5) == 6.0
# Function: sum - test2:
def test_sum_negative_numbers():
assert sum(-3.5, -2.5) == -6.0
# Function: sum - test3:
def test_sum_mixed_numbers():
assert sum(3.5, -2.5) == 1.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aitestgen-0.0.2.tar.gz
(3.3 kB
view details)
Built Distribution
File details
Details for the file aitestgen-0.0.2.tar.gz
.
File metadata
- Download URL: aitestgen-0.0.2.tar.gz
- Upload date:
- Size: 3.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.5.0-10-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1fa4ebf5200cf0233cbe34d8e1ad717e0d20f621f8d58bc8dcfed0d361f3314 |
|
MD5 | 05907f256f09ceb54892012000783f25 |
|
BLAKE2b-256 | 12412ae8085435e22e8d35b682774f1c46589af8ae05eca71760880d310814f1 |
File details
Details for the file aitestgen-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: aitestgen-0.0.2-py3-none-any.whl
- Upload date:
- Size: 4.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.6 Linux/6.5.0-10-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fa3c96f37485c1277322f0c40517cc0292eba7dfce63d51c7f6e394980f6459 |
|
MD5 | 3d915dd4efb9e1a4fb37995a64edc727 |
|
BLAKE2b-256 | 0e06a28e2f82f4a4523ff812581b162f9f01a6112fd911bc5416e4117a29f42f |