微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pytest:如何只显示一次失败的断言,而不是两次

如何解决Pytest:如何只显示一次失败的断言,而不是两次

我通过 PyCharm 运行 pytest,并执行一个测试:

/home/guettli/projects/lala-env/bin/python /snap/pycharm-professional/230/plugins/python/helpers/pycharm/_jb_pytest_runner.py --target test_models.py::test_address_is_complete
Testing started at 11:53 ...
Launching pytest with arguments test_models.py::test_address_is_complete in /home/guettli/projects/lala-env/src/lala/lala/tests

============================= test session starts ==============================
platform linux -- Python 3.8.5,pytest-6.2.0,py-1.10.0,pluggy-0.13.1 -- /home/guettli/projects/lala-env/bin/python
cachedir: .pytest_cache
django: settings: mysite.settings (from ini)
rootdir: /home/guettli/projects/lala-env/src/lala,configfile: pytest.ini
plugins: django-4.1.0
collecting ... collected 1 item

test_models.py::test_address_is_complete Creating test database for alias 'default' ('test_lala')...
Operations to perform:
  Synchronize unmigrated apps: allauth,colorfield,debug_toolbar,google,messages,staticfiles
  Apply all migrations: account,admin,auth,contenttypes,lala,sessions,sites,socialaccount
Synchronizing apps without migrations:
  Creating tables...
    Running deferred sql...
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying account.0001_initial... OK
  Applying account.0002_email_max_length... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying auth.0012_alter_user_first_name_max_length... OK
  Applying lala.0001_initial... OK
  Applying lala.0002_offer_price... OK
  Applying lala.0003_order_amount... OK
  Applying lala.0004_auto_20201215_2043... OK
  Applying lala.0005_auto_20201229_2148... OK
  Applying lala.0006_auto_20201229_2150... OK
  Applying lala.0007_auto_20210117_1632... OK
  Applying lala.0008_auto_20210117_1632... OK
  Applying lala.0009_add_address... OK
  Applying lala.0010_auto_20210117_2102... OK
  Applying lala.0011_auto_20210119_1909... OK
  Applying lala.0012_allergen_short... OK
  Applying lala.0013_auto_20210119_1914... OK
  Applying lala.0014_auto_20210120_0734... OK
  Applying lala.0015_auto_20210120_0752... OK
  Applying lala.0016_auto_20210120_1923... OK
  Applying lala.0017_allergenuser... OK
  Applying lala.0018_address_place... OK
  Applying lala.0019_auto_20210126_2027... OK
  Applying lala.0020_auto_20210126_2027... OK
  Applying lala.0021_recurringoffer_days... OK
  Applying lala.0022_auto_20210126_2129... OK
  Applying lala.0023_auto_20210201_2056... OK
  Applying lala.0024_globalconfig_navbar_title... OK
  Applying lala.0025_activationstate... OK
  Applying sessions.0001_initial... OK
  Applying sites.0001_initial... OK
  Applying sites.0002_alter_domain_unique... OK
  Applying socialaccount.0001_initial... OK
  Applying socialaccount.0002_token_max_lengths... OK
  Applying socialaccount.0003_extra_data_default_dict... OK
Destroying test database for alias 'default' ('test_lala')...
Failed
lala/tests/test_models.py:18 (test_address_is_complete)
user = <User: Dr. Foo>

    def test_address_is_complete(user):
        address = user.address
>       assert address.is_complete
E       assert False
E        +  where False = <Address: Address object (1)>.is_complete

test_models.py:21: AssertionError


Assertion Failed


Assertion Failed


=================================== FAILURES ===================================
___________________________ test_address_is_complete ___________________________

user = <User: Dr. Foo>

    def test_address_is_complete(user):
        address = user.address
>       assert address.is_complete
E       assert False
E        +  where False = <Address: Address object (1)>.is_complete

test_models.py:21: AssertionError
=========================== short test summary info ============================
Failed test_models.py::test_address_is_complete - assert False
============================== 1 Failed in 2.88s ===============================

Process finished with exit code 1


Assertion Failed

Assertion Failed

为什么异常会显示两次?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。