Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TaskFlow — REST API & Automated Testing

A simple Task Management REST API built with Python and Flask, with an automated test suite using pytest.

Technologies

  • Python
  • Flask
  • REST API
  • pytest
  • Git & GitHub

Features

  • Create tasks
  • Retrieve tasks
  • Update tasks
  • Delete tasks
  • Input validation
  • Error handling
  • Automated API testing

API Endpoints

Method Endpoint Description
GET /tasks Get all tasks
GET /tasks/<id> Get a specific task
POST /tasks Create a task
PUT /tasks/<id> Update a task
DELETE /tasks/<id> Delete a task

Testing

The project includes automated tests covering:

  • Successful API requests
  • Invalid inputs
  • Missing task titles
  • Non-existent tasks
  • Invalid task IDs
  • API response validation
  • HTTP status codes
  • Edge cases
  • Regression testing
  • Test fixtures and test isolation

Run the Project

Create and activate a virtual environment, then install the dependencies:

pip install -r requirements.txt

Run the Flask application:

python app.py

The API will be available at:

http://127.0.0.1:5000

Run Tests

Run the complete automated test suite:

pytest -v

Test Results

The project currently contains 10 automated tests covering:

  • CRUD API operations
  • Valid and invalid requests
  • Edge cases
  • API response validation
  • HTTP status codes
  • Test fixtures
  • Test isolation
  • Regression scenarios

All tests are passing successfully.

10 passed

About

REST API testing project built with Python, Flask and pytest, covering CRUD operations, validation, edge cases and regression testing.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages