2017-08-15 11 views
0

シーンの背後にある深いロジックを持つ.clean()を変更する必要があります。
それは私の特徴と直接関係していないので、私はそれを模倣し、複雑な論理を取り除くことに決めました。次に、mommy.makeを使用してテストオブジェクトを実行できます。
フル・スイートを実行するとモック・モデル・メソッドが失敗する理由

ここは私のコードです。
https://gist.github.com/elcolie/cfeadfbb29996823abfb998447cfe822

個別に実行すると機能します。しかし、フルスイートを実行すると失敗します。

私は、これらに従っていた:
why would a django test fail only when the full test suite is run?
Django unit tests failing when run with other test cases
しかし、動作しません。

マイエラー: 2最後のテストケースは、私はプログラムロジックは、シーケンスIDで囲まれていないと確信して

Failure 
Traceback (most recent call last): 
    File "/Users/el/.pyenv/versions/3.6.0/lib/python3.6/unittest/mock.py", line 1179, in patched 
    return func(*args, **keywargs) 
    File "/Users/el/Code/eneos-pos-web/eneos/apps/mail_logs/mail_data_tests.py", line 194, in test_user_change_status_13July_query_all_false 
    self.assertDictEqual(expected_obj, summary) 
AssertionError: {'tod[71 chars] 0, 'today_active_email_true': 0, 'today_active_email_none': 1} != {'tod[71 chars] 0, 'today_active_email_true': 0, 'today_active_email_none': 0} 
    {'today_active_email': 1, 
    'today_active_email_false': 0, 
- 'today_active_email_none': 1, 
?       ^

+ 'today_active_email_none': 0, 
?       ^

    'today_active_email_true': 0, 
    'today_all_orders': 1} 


Failure 
Traceback (most recent call last): 
    File "/Users/el/.pyenv/versions/3.6.0/lib/python3.6/unittest/mock.py", line 1179, in patched 
    return func(*args, **keywargs) 
    File "/Users/el/Code/eneos-pos-web/eneos/apps/mail_logs/mail_data_tests.py", line 231, in test_user_change_status_16July 
    self.assertDictEqual(expected_obj, summary) 
AssertionError: {'today_active_email': 1, 'today_active_email_fals[84 chars]': 1} != {'today_all_orders': 1, 'today_active_email': 1, '[84 chars]': 0} 
    {'today_active_email': 1, 
    'today_active_email_false': 0, 
- 'today_active_email_none': 1, 
?       ^

+ 'today_active_email_none': 0, 
?       ^

    'today_active_email_true': 0, 
    'today_all_orders': 1} 

答えて

0

に失敗。
しかし、データベースを個々の実行のように元の状態に戻すため。
次の設定を使用します。

class MailLogFixture(TransactionTestCase): 
    reset_sequences = True 

そして、それは

の作品
関連する問題