TestCase не работает, но api работает нормально

Я все еще изучаю django, но столкнулся с проблемой, о которой не смог найти ничего в интернете. Я был занят написанием тестов для своих CBV, но теперь столкнулся с этой странной проблемой

specs: Python 3.10 django 4.0.4 drf 3.13.1

У меня есть модель с 2 полями foreignkey, вы можете увидеть ее ниже.

Моя проблема в том, что когда я запускаю код и тестирую с помощью drf-yasg swagger, он запускается без каких-либо проблем, но мой тест продолжает терпеть неудачу. конкретно test_get_good()

В трассировке говорится: AttributeError: 'ArticleLocation' object has no attribute 'article_name' но страница swagger делает все без проблем, и с помощью postman я также не получил ошибку вообще.

Может кто-нибудь объяснить мне, где это идет не так, поскольку я этого не вижу.

class Slotting(ICSBaseMixin):
    # database fields
    article = models.OneToOneField(
        "ics_stock.Article",
        on_delete=models.SET_NULL,
        related_name="slotting",
        null=True
    )
    article_location = models.OneToOneField(
        "ics_stock.ArticleLocation",
        on_delete=models.SET_NULL,
        null=True,
        related_name="slotting"
    )

    def __str__(self):
        return str(self.record_id)

    class Meta:
        db_table = "ICS_Stock_Slotting"
        verbose_name = "Slotting"
        verbose_name_plural = "Slottings" # noqa

и мои сериализаторы:

from rest_framework import serializers
from ics_stock.models.slotting import Slotting
from ics_stock.models.article import Article
from ics_stock.models.article_location import ArticleLocation


class SlottingOutputSerializer(serializers.ModelSerializer):
    class Meta:
        model = Slotting
        fields = "__all__"


class SlottingArticleOutputSerializer(serializers.ModelSerializer):
    class Meta:
        model = Article
        fields = (
            "record_id",
            "article_name",
            "article_description",
            "article_code",
            "article_size_quantity",
            "article_size_unit",
            "barcode",
            "creation_user",
            "creation_program",
            "creation_date",
            "mutation_user",
            "mutation_program",
            "mutation_date",
        )


class SlottingArticleLocationOutputSerializer(serializers.ModelSerializer):
    class Meta:
        model = ArticleLocation
        fields = (
            "record_id",
            "location_name",
            "location_type",
            "creation_user",
            "creation_program",
            "creation_date",
            "mutation_user",
            "mutation_program",
            "mutation_date",
        )


class SlottingCreateUpdateSerializer(serializers.ModelSerializer):
    class Meta:
        model = Slotting
        fields = (
            "article_location",
            "article",
        )


class SlottingDetailedOutputSerializer(serializers.ModelSerializer):
    article_location = SlottingArticleOutputSerializer(read_only=True)
    article = SlottingArticleLocationOutputSerializer(read_only=True)

    class Meta:
        model = Slotting
        fields = "__all__"

мои взгляды:

testcase:

Вернуться на верх