[PYTHON] [Django] Appuyez sur une commande que vous avez effectuée à partir du processus qui s'exécute sur manage.py.

Pour l'enregistrement.

Ce que je voulais faire

J'ai créé mes propres commandes dans le répertoire des commandes et j'ai essayé de faire la même chose que les commandes suivantes à partir du test.

$ python manage.py create_initial_data

Je me demandais si j'exécuterais des commandes dans le shell lors de la configuration du test, mais Django était bien pris en charge ici

manière

Incorporez la fonction call_command dans le script cible.

from django.test import TestCase, Client
from django.core.management import call_command


class TestSendEmailView(TestCase):
    def setUp(self):
        self.client = Client()
        call_command('create_initial_data') #ici

    def test_success(self):
        response = self.client.get('/emails/')
        self.assertEqual(response.status_code, 200)

Cela fera la même chose que python manage.py create_initial_data.

Recommended Posts

[Django] Appuyez sur une commande que vous avez effectuée à partir du processus qui s'exécute sur manage.py.
Lorsque vous souhaitez lancer une commande UNIX sur Python
Je vous ai fait exécuter des commandes depuis un navigateur WEB
J'ai fait un générateur de réseau neuronal qui fonctionne sur FPGA
Présentation de youtube-dl, un outil de téléchargement vidéo qui fonctionne sur la ligne de commande, et sa fonction de complétion zsh.
J'ai fait une simple minuterie qui peut être démarrée depuis le terminal
J'ai fait une webAPI! Construire un environnement à partir de Django Rest Framework 1 avec EC2
Vous recherchez commandlinefu sur la ligne de commande
[Django] Créez un formulaire qui remplit automatiquement l'adresse à partir du code postal
CodePicnic qui peut créer un environnement [Développement | Exécuter | Tutoriel | Démo] qui s'exécute sur le navigateur
L'émulateur Linux "iSH" qui fonctionne sur iPad est un sujet brûlant en moi
J'ai fait une commande pour attendre que Django démarre jusqu'à ce que la base de données soit prête
J'ai créé une VM qui exécute OpenCV pour Python
Langage de programmation qui protège les gens de NHK
Remarque DJango: depuis le début (en utilisant une vue générique)
Remarque DJango: depuis le début (création d'une vue à partir d'un modèle)
Faire du modèle une chaîne sur le modèle HTML Django
J'ai fait une commande pour marquer le clip de la table
Déployer l'application Django créée avec PTVS sur Azure
Script Python qui peut vérifier l'état du serveur à partir du navigateur