Можно ли использовать приборы из других приложений в тестах Django? - PullRequest
8 голосов
/ 06 сентября 2011

У меня 2 приложения, пользователи и ресурсы.ресурсы зависят от участников.Можно ли использовать тестовые данные из приложения members в моих тестах для приложения resources?

Ответы [ 2 ]

4 голосов
/ 15 апреля 2015

Например, если у вас есть два приложения, одно из которых называется «App1», а другое - «App2», а структура вашего проекта выглядит примерно так:

myproject/
----APP1/
--------models/
------------app_1_model.py
--------tests/
------------test_app1.py
--------fixtures/
------------fixture_app1_number_1.json
------------fixture_app1_number_2.json
----APP2/
--------models/
------------app_2_model.py
--------tests/
------------test_app2.py
--------fixtures/
------------fixture_app2_number_1.json
------------fixture_app2_number_2.json
------------fixture_app2_number_3.json

это воображаемоесценарий, и вы хотите написать тестовый сценарий для «APP2», но ваш тестовый сценарий может нуждаться в данных из «APP1», другими словами, вам нужны приборы в «APP1»

from APP1.models.app_1_model import *
class TestApp2(TestCase):
   fixtures = ['fixture_app2_number_1','fixture_app2_number_2','fixture_app2_number_3','fixture_app1_number_1']
   def test_function_one(self):
     pass

, как вы видели,просто напишите название прибора "APP1" в списке приборов, очень умный и простой.

3 голосов
/ 07 сентября 2011

Очевидно, что любое устройство может быть загружено из любого приложения, как если бы оно было в том же приложении, так что будьте осторожны с тем, что вы называете своими приборами. : /

...