Sefa
Sefa

Reputation: 8992

How to run tests django rest framework tests?

I'm learning django rest framework. I wrote a simple test like this:

from rest_framework import status
from rest_framework.test import APITestCase


class ClinicTestCase(APITestCase):
    def getList(self):
        factory = APIRequestFactory()
        request = factory.get('/Clinic/')
        self.assertEqual(response.status_code, status.OK)

my api returns empty json array for that request. What i don't know is, how do i run this test?

when i use this command:

python manage.py test

i get

Ran 0 tests in 0.000s

as output. It's not written in documentation to how to run the tests.

Upvotes: 14

Views: 9008

Answers (2)

Md. Shohel Rana
Md. Shohel Rana

Reputation: 1

from rest_framework.test import APITestCase

from rest_framework import status

class Portfolio_api_test(APITestCase): def setUp(self): Your code

def test_your_function_name(self):
    response = self.client.get('url')
    self.assertEqual(response.status_code, status.HTTP_200_OK)

Your test function name should start with test_your_function_name

Upvotes: 0

aensm
aensm

Reputation: 3607

I believe your test methods need to start with test. Change def getList to def testGetList or def test_get_list.

As with other python tests (see https://docs.python.org/2/library/unittest.html#basic-example), if methods do not start with test they will not be run as tests.

Upvotes: 14

Related Questions