Провел 0 тестов за 0.000 с - PullRequest
0 голосов
/ 14 февраля 2020

У меня есть домашний проект, в котором я использую django -rest Framework и docker -compose. Кажется, все работает нормально, за исключением tests.py.Test, бегун просто не видит их. docker - сочинять поступки, как будто у меня их нет. Вот мои файлы:

docker -составить:

version: '3'

services:
  db:
    image: postgres
  web:
    build: .
    command: bash -c 'python3 taskmanager/manage.py makemigrations && taskmanager/manage.py migrate && taskmanager/manage.py test && taskmanager/manage.py runserver 0.0.0.0:5000'
    volumes:
      - .:/code
    ports:
      - "5000:5000"
    depends_on:
      - db

tests.py:

from django.urls import reverse
from rest_framework import status
from rest_framework.test import APITestCase
from .models import Task


class TaskTests(APITestCase):

def setUp(self):
    Task.objects.create(name='Run marathon', description='Need to run a marathon')
    Task.objects.create(name='Lie on the beach', description='Need some more sunlight')

def test_create_task(self):
    url = reverse('tasks_list_url')
    data = {'name': 'Buy milk', 'description': 'Need some milk'}
    response = self.client.post(url, data, format='json')
    self.assertEqual(response.status_code, status.HTTP_201_CREATED)
    self.assertEqual(Task.objects.get(id=3).name, 'Buy milk')

def test_get_single_task(self):
    url = reverse('task_detail_url', args=[2])
    response = self.client.get(url, format='json')
    self.assertEqual(response.status_code, status.HTTP_200_OK)

def test_get_tasks_list(self):
    url = reverse('tasks_list_url')
    response = self.client.get(url, format='json')
    self.assertEqual(response.status_code, status.HTTP_200_OK)

местоположение tests.py: 1

1 Ответ

0 голосов
/ 15 февраля 2020

Это дикое предположение, потому что информации недостаточно. У тебя работает pytest? Какова ваша команда для запуска теста? Что такое трассировка Пожалуйста, обновите ваш вопрос, чтобы все могли лучше это понять.

Иногда организатор теста предполагает, что файл теста имеет форму test_***.py. Может, так и происходит? Попробуйте изменить файл теста на что-то вроде test_example.py и повторите команду.

...