Я реализую покрытие для различных проектов, для которых я написал тесты. Обычно я просто получаю результаты по файлам в моем проекте, но для одного из моих проектов он дает мне очень длинный список файлов. После просмотра путей, кажется, включены все исходные файлы для библиотек, которые я импортирую в свой код.
Это нормальное поведение, которого я никогда раньше не замечал, или я должен указывать охвату игнорировать импортированные библиотеки?
РЕДАКТИРОВАТЬ: coverage run --source . main.py args
, кажется, дает мне результат, который я ожидал, но я все еще задаюсь вопросом, почему это произошло. Нужно ли включать --source
каждый раз, когда я запускаю покрытие?
$ coverage run main.py args
$ coverage report
Name Stmts Miss Cover
--------------------------------------------------------------------------------------------------------------------------------------
/home/flying_scorpio/.local/lib/python3.6/site-packages/OpenSSL/SSL.py 917 670 27%
/home/flying_scorpio/.local/lib/python3.6/site-packages/OpenSSL/__init__.py 4 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/OpenSSL/_util.py 53 32 40%
/home/flying_scorpio/.local/lib/python3.6/site-packages/OpenSSL/crypto.py 1155 923 20%
/home/flying_scorpio/.local/lib/python3.6/site-packages/OpenSSL/version.py 10 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/__init__.py 3 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_elliptic_curve.py 90 46 49%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_errors.py 12 7 42%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_ffi.py 13 3 77%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_int.py 54 42 22%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_iri.py 140 124 11%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_ordereddict.py 91 88 3%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_perf/__init__.py 0 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_perf/_big_num_ctypes.py 31 3 90%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_teletex_codec.py 26 7 73%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/_types.py 23 13 43%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/algos.py 273 159 42%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/core.py 1967 1599 19%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/keys.py 353 234 34%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/parser.py 98 86 12%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/util.py 287 220 23%
/home/flying_scorpio/.local/lib/python3.6/site-packages/asn1crypto/version.py 3 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/__about__.py 10 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/__init__.py 3 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/exceptions.py 34 4 88%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/__init__.py 2 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/_oid.py 32 12 62%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/__init__.py 7 4 43%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/interfaces.py 85 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/__init__.py 3 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/aead.py 89 78 12%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/backend.py 1267 1042 18%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/ciphers.py 109 90 17%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/cmac.py 46 33 28%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/decode_asn1.py 422 344 18%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/dh.py 153 122 20%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/dsa.py 150 108 28%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/ec.py 173 130 25%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/encode_asn1.py 370 320 14%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/hashes.py 43 31 28%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/hmac.py 45 32 29%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/ocsp.py 208 142 32%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/rsa.py 244 198 19%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/utils.py 36 27 25%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/x25519.py 65 46 29%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/x448.py 57 39 32%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/backends/openssl/x509.py 331 245 26%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/bindings/__init__.py 1 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/bindings/openssl/__init__.py 1 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/bindings/openssl/_conditional.py 84 38 55%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/bindings/openssl/binding.py 90 26 71%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/__init__.py 1 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/__init__.py 11 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/dh.py 87 37 57%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/dsa.py 106 48 55%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/ec.py 218 58 73%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/padding.py 46 20 57%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/rsa.py 162 102 37%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/utils.py 26 13 50%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.py 28 12 57%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/asymmetric/x448.py 27 12 56%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py 3 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/ciphers/algorithms.py 104 30 71%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/ciphers/base.py 124 71 43%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/ciphers/modes.py 118 38 68%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/constant_time.py 15 8 47%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/hashes.py 146 37 75%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/kdf/__init__.py 7 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/kdf/scrypt.py 37 24 35%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/mac.py 9 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/serialization/__init__.py 5 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/serialization/base.py 48 9 81%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/hazmat/primitives/serialization/ssh.py 72 57 21%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/utils.py 106 35 67%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/__init__.py 70 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/base.py 288 177 39%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/certificate_transparency.py 15 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/extensions.py 845 470 44%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/general_name.py 196 116 41%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/name.py 128 76 41%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/ocsp.py 167 94 44%
/home/flying_scorpio/.local/lib/python3.6/site-packages/cryptography/x509/oid.py 93 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/idna/__init__.py 2 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/idna/core.py 280 242 14%
/home/flying_scorpio/.local/lib/python3.6/site-packages/idna/idnadata.py 4 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/idna/intranges.py 29 24 17%
/home/flying_scorpio/.local/lib/python3.6/site-packages/idna/package_data.py 1 0 100%
/home/flying_scorpio/.local/lib/python3.6/site-packages/lxml/__init__.py 10 9 10%
/home/flying_scorpio/.local/lib/python3.6/site-packages/six.py 472 221 53%
main.py 16 3 81%
wikipedia_acronym_dictionary.py 48 2 96%
/usr/lib/python3/dist-packages/bs4/__init__.py 270 119 56%
/usr/lib/python3/dist-packages/bs4/builder/__init__.py 145 30 79%
/usr/lib/python3/dist-packages/bs4/builder/_html5lib.py 252 195 23%
/usr/lib/python3/dist-packages/bs4/builder/_htmlparser.py 167 129 23%
/usr/lib/python3/dist-packages/bs4/builder/_lxml.py 146 53 64%
/usr/lib/python3/dist-packages/bs4/dammit.py 258 188 27%
/usr/lib/python3/dist-packages/bs4/element.py 984 599 39%
/usr/lib/python3/dist-packages/certifi/__init__.py 2 0 100%
/usr/lib/python3/dist-packages/certifi/core.py 11 3 73%
/usr/lib/python3/dist-packages/chardet/__init__.py 11 7 36%
/usr/lib/python3/dist-packages/chardet/big5freq.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/big5prober.py 14 6 57%
/usr/lib/python3/dist-packages/chardet/chardistribution.py 117 83 29%
/usr/lib/python3/dist-packages/chardet/charsetgroupprober.py 70 61 13%
/usr/lib/python3/dist-packages/chardet/charsetprober.py 50 36 28%
/usr/lib/python3/dist-packages/chardet/codingstatemachine.py 27 18 33%
/usr/lib/python3/dist-packages/chardet/compat.py 10 4 60%
/usr/lib/python3/dist-packages/chardet/cp949prober.py 14 6 57%
/usr/lib/python3/dist-packages/chardet/enums.py 34 1 97%
/usr/lib/python3/dist-packages/chardet/escprober.py 56 45 20%
/usr/lib/python3/dist-packages/chardet/escsm.py 17 0 100%
/usr/lib/python3/dist-packages/chardet/eucjpprober.py 47 34 28%
/usr/lib/python3/dist-packages/chardet/euckrfreq.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/euckrprober.py 14 6 57%
/usr/lib/python3/dist-packages/chardet/euctwfreq.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/euctwprober.py 14 6 57%
/usr/lib/python3/dist-packages/chardet/gb2312freq.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/gb2312prober.py 14 6 57%
/usr/lib/python3/dist-packages/chardet/hebrewprober.py 74 48 35%
/usr/lib/python3/dist-packages/chardet/jisfreq.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/jpcntx.py 80 61 24%
/usr/lib/python3/dist-packages/chardet/langbulgarianmodel.py 5 0 100%
/usr/lib/python3/dist-packages/chardet/langcyrillicmodel.py 13 0 100%
/usr/lib/python3/dist-packages/chardet/langgreekmodel.py 5 0 100%
/usr/lib/python3/dist-packages/chardet/langhebrewmodel.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/langthaimodel.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/langturkishmodel.py 3 0 100%
/usr/lib/python3/dist-packages/chardet/latin1prober.py 50 29 42%
/usr/lib/python3/dist-packages/chardet/mbcharsetprober.py 42 33 21%
/usr/lib/python3/dist-packages/chardet/mbcsgroupprober.py 14 3 79%
/usr/lib/python3/dist-packages/chardet/mbcssm.py 41 0 100%
/usr/lib/python3/dist-packages/chardet/sbcharsetprober.py 73 60 18%
/usr/lib/python3/dist-packages/chardet/sbcsgroupprober.py 19 8 58%
/usr/lib/python3/dist-packages/chardet/sjisprober.py 47 34 28%
/usr/lib/python3/dist-packages/chardet/universaldetector.py 124 104 16%
/usr/lib/python3/dist-packages/chardet/utf8prober.py 41 29 29%
/usr/lib/python3/dist-packages/chardet/version.py 2 0 100%
/usr/lib/python3/dist-packages/html5lib/__init__.py 7 0 100%
/usr/lib/python3/dist-packages/html5lib/_inputstream.py 560 477 15%
/usr/lib/python3/dist-packages/html5lib/_tokenizer.py 1234 1148 7%
/usr/lib/python3/dist-packages/html5lib/_trie/__init__.py 8 1 88%
/usr/lib/python3/dist-packages/html5lib/_trie/_base.py 23 16 30%
/usr/lib/python3/dist-packages/html5lib/_trie/datrie.py 31 29 6%
/usr/lib/python3/dist-packages/html5lib/_trie/py.py 46 29 37%
/usr/lib/python3/dist-packages/html5lib/_utils.py 66 44 33%
/usr/lib/python3/dist-packages/html5lib/constants.py 39 0 100%
/usr/lib/python3/dist-packages/html5lib/html5parser.py 1552 1514 2%
/usr/lib/python3/dist-packages/html5lib/serializer.py 205 158 23%
/usr/lib/python3/dist-packages/html5lib/treebuilders/__init__.py 22 18 18%
/usr/lib/python3/dist-packages/html5lib/treebuilders/base.py 202 156 23%
/usr/lib/python3/dist-packages/html5lib/treewalkers/__init__.py 78 70 10%
/usr/lib/python3/dist-packages/requests/__init__.py 50 7 86%
/usr/lib/python3/dist-packages/requests/__version__.py 10 0 100%
/usr/lib/python3/dist-packages/requests/_internal_utils.py 16 3 81%
/usr/lib/python3/dist-packages/requests/adapters.py 214 98 54%
/usr/lib/python3/dist-packages/requests/api.py 22 8 64%
/usr/lib/python3/dist-packages/requests/auth.py 162 129 20%
/usr/lib/python3/dist-packages/requests/certs.py 4 1 75%
/usr/lib/python3/dist-packages/requests/compat.py 37 15 59%
/usr/lib/python3/dist-packages/requests/cookies.py 236 130 45%
/usr/lib/python3/dist-packages/requests/exceptions.py 34 6 82%
/usr/lib/python3/dist-packages/requests/hooks.py 15 6 60%
/usr/lib/python3/dist-packages/requests/models.py 443 211 52%
/usr/lib/python3/dist-packages/requests/packages.py 6 0 100%
/usr/lib/python3/dist-packages/requests/sessions.py 275 52 81%
/usr/lib/python3/dist-packages/requests/status_codes.py 8 0 100%
/usr/lib/python3/dist-packages/requests/structures.py 40 9 78%
/usr/lib/python3/dist-packages/requests/utils.py 400 264 34%
/usr/lib/python3/dist-packages/simplejson/__init__.py 80 57 29%
/usr/lib/python3/dist-packages/simplejson/compat.py 34 15 56%
/usr/lib/python3/dist-packages/simplejson/decoder.py 228 181 21%
/usr/lib/python3/dist-packages/simplejson/encoder.py 387 332 14%
/usr/lib/python3/dist-packages/simplejson/errors.py 29 23 21%
/usr/lib/python3/dist-packages/simplejson/raw_json.py 3 1 67%
/usr/lib/python3/dist-packages/simplejson/scanner.py 64 53 17%
/usr/lib/python3/dist-packages/urllib3/__init__.py 38 12 68%
/usr/lib/python3/dist-packages/urllib3/_collections.py 177 87 51%
/usr/lib/python3/dist-packages/urllib3/connection.py 160 64 60%
/usr/lib/python3/dist-packages/urllib3/connectionpool.py 317 131 59%
/usr/lib/python3/dist-packages/urllib3/contrib/__init__.py 0 0 100%
/usr/lib/python3/dist-packages/urllib3/contrib/pyopenssl.py 230 215 7%
/usr/lib/python3/dist-packages/urllib3/contrib/socks.py 71 62 13%
/usr/lib/python3/dist-packages/urllib3/exceptions.py 96 21 78%
/usr/lib/python3/dist-packages/urllib3/fields.py 69 56 19%
/usr/lib/python3/dist-packages/urllib3/filepost.py 39 27 31%
/usr/lib/python3/dist-packages/urllib3/packages/__init__.py 8 2 75%
/usr/lib/python3/dist-packages/urllib3/packages/backports/__init__.py 0 0 100%
/usr/lib/python3/dist-packages/urllib3/packages/backports/makefile.py 36 32 11%
/usr/lib/python3/dist-packages/urllib3/packages/ssl_match_hostname/__init__.py 11 6 45%
/usr/lib/python3/dist-packages/urllib3/poolmanager.py 167 76 54%
/usr/lib/python3/dist-packages/urllib3/request.py 38 26 32%
/usr/lib/python3/dist-packages/urllib3/response.py 308 156 49%
/usr/lib/python3/dist-packages/urllib3/util/__init__.py 10 0 100%
/usr/lib/python3/dist-packages/urllib3/util/connection.py 66 18 73%
/usr/lib/python3/dist-packages/urllib3/util/request.py 45 33 27%
/usr/lib/python3/dist-packages/urllib3/util/response.py 32 17 47%
/usr/lib/python3/dist-packages/urllib3/util/retry.py 150 97 35%
/usr/lib/python3/dist-packages/urllib3/util/selectors.py 363 245 33%
/usr/lib/python3/dist-packages/urllib3/util/ssl_.py 126 69 45%
/usr/lib/python3/dist-packages/urllib3/util/timeout.py 59 25 58%
/usr/lib/python3/dist-packages/urllib3/util/url.py 107 47 56%
/usr/lib/python3/dist-packages/urllib3/util/wait.py 16 3 81%
/usr/lib/python3/dist-packages/webencodings/__init__.py 119 77 35%
/usr/lib/python3/dist-packages/webencodings/labels.py 1 0 100%
--------------------------------------------------------------------------------------------------------------------------------------
TOTAL
$ coverage run --source . main.py args
$ coverage report
Name Stmts Miss Cover
-----------------------------------------------------
acronyms_to_lookup.py 1 1 0%
main.py 16 3 81%
tests.py 22 22 0%
wikipedia_acronym_dictionary.py 48 2 96%
-----------------------------------------------------
TOTAL 87 28 68%