Skip to main content

Smoke tests for Django project.

Project description

https://badge.fury.io/py/django-smoke-tests.svg https://travis-ci.org/kamilkijak/django-smoke-tests.svg?branch=master https://codecov.io/gh/kamilkijak/django-smoke-tests/branch/master/graph/badge.svg

Smoke tests for Django project.

Requirements

  • Python (2.7, 3.4, 3.5, 3.6)

  • Django (1.8, 1.9, 1.10, 1.11)

Installation

Install using pip:

pip install django-smoke-tests

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'django_smoke_tests',
    ...
)

Quickstart

Execute smoke tests for the whole project:

python manage.py smoke_tests

Usage

Parameters

$ python manage.py smoke_tests --help
usage: manage.py smoke_tests [-h] [--http-methods HTTP_METHODS]
                             [--allow-status-codes ALLOW_STATUS_CODES]
                             [--disallow-status-codes DISALLOW_STATUS_CODES]
                             [--no-db]
                             [app_names]

Smoke tests for Django endpoints.

positional arguments:
  app_names             names of apps to test

optional arguments:
  -h, --help            show this help message and exit
  --http-methods HTTP_METHODS
                        comma separated HTTP methods that will be executed for
                        all endpoints, eg. GET,POST,DELETE
                        [default: GET,POST,PUT,DELETE]
  --allow-status-codes ALLOW_STATUS_CODES
                        comma separated HTTP status codes that will be
                        considered as success responses, eg. 200,201,204
                        [default: 200,201,301,302,304,405]
  --disallow-status-codes DISALLOW_STATUS_CODES
                        comma separated HTTP status codes that will be
                        considered as fail responses, eg. 404,500
  --no-db               flag for skipping database creation

Skipping tests

To skip tests for specific URLs add SKIP_SMOKE_TESTS option in your settings.

This setting should contain list of URLs’ names.

SKIP_SMOKE_TESTS = (
    'all-astronauts',  # to skip url(r'^astronauts/', AllAstronauts.as_view(), name='all-astronauts')
)

Reporting bugs

If you face any problems please report them to the issue tracker at https://github.com/kamilkijak/django-smoke-tests/issues

Contributing

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Credits

Tools used in rendering this package:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-smoke-tests-0.1.3.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

django_smoke_tests-0.1.3-py2.py3-none-any.whl (11.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-smoke-tests-0.1.3.tar.gz.

File metadata

File hashes

Hashes for django-smoke-tests-0.1.3.tar.gz
Algorithm Hash digest
SHA256 4a2a80ac86778b176f1e3b2c6ef7b0c2f0d049787e7a7bd2f327c4ecb0902a3c
MD5 d9a50fa1cd10757b33993c34d92d8eda
BLAKE2b-256 a7aed8552f777045e29f630cf9fc86e159e47991992ceb384f13bb5b79f2e4b3

See more details on using hashes here.

File details

Details for the file django_smoke_tests-0.1.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_smoke_tests-0.1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0884272b6cee1c4964d823e97f199b3cf0cffb6678c026c258575d8725f44366
MD5 2d7d44eb5bf4954df6eefef9c78cadc9
BLAKE2b-256 5b011824bedb7f787fbfd6e3671a46bd88d2f63bef789bf925749e08cb86efc2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page