亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

html隨機(jī)選數(shù)代碼介紹 html隨機(jī)數(shù)生成器( 五 )


[dechin@dechin-manjaro pytest]$ py.test --cov=random_number ./ --cov-report=html=========================================== test session starts ============================================platform linux -- Python 3.8.5, pytest-6.2.1, py-1.9.0, pluggy-0.13.1rootdir: /home/dechin/projects/2021-python/pytest, configfile: pytest.iniplugins: cov-2.11.1, metadata-1.11.0, html-3.1.1collected 1 itemtest_random_number.py .[100%]----------- coverage: platform linux, python 3.8.5-final-0 -----------Coverage HTML written to dir htmlcov============================================ 1 passed in 0.76s =============================================這里會提示我們?nèi)tmlcov目錄下找測試報告,我們打開相應(yīng)的index.html文件,效果如下:
這里我們看到random_number.py文件的測試覆蓋率為86%,我們可以點開鏈接查看剩下未覆蓋的測試是什么內(nèi)容:
原來是main函數(shù)中的幾行指令沒有被測試到,一般我們在正式倉庫中,是需要去掉main函數(shù)的,如果不是測試文件的話 。
使用flake8進(jìn)行python編碼規(guī)范檢查首先我們還是使用pip來直接安裝flake8組件,其集成了PEP8的python編碼規(guī)范:
[dechin@dechin-manjaro pytest]$ python3 -m pip install -U flake8Requirement already up-to-date: flake8 in /home/dechin/anaconda3/lib/python3.8/site-packages (3.8.4)Requirement already satisfied, skipping upgrade: mccabe<0.7.0,>=0.6.0 in /home/dechin/anaconda3/lib/python3.8/site-packages (from flake8) (0.6.1)Requirement already satisfied, skipping upgrade: pyflakes<2.3.0,>=2.2.0 in /home/dechin/anaconda3/lib/python3.8/site-packages (from flake8) (2.2.0)Requirement already satisfied, skipping upgrade: pycodestyle<2.7.0,>=2.6.0a1 in /home/dechin/anaconda3/lib/python3.8/site-packages (from flake8) (2.6.0)查看安裝的flake8版本號:
[dechin@dechin-manjaro pytest]$ flake8 --version3.8.4 (mccabe: 0.6.1, pycodestyle: 2.6.0, pyflakes: 2.2.0) CPython 3.8.5 on Linux使用方式較為簡單,在當(dāng)前目錄下直接執(zhí)行flake8即可,檢查項會以當(dāng)前路徑為rootdir,遞歸地進(jìn)行檢索:
[dechin@dechin-manjaro pytest]$ flake8./test_random_number.py:2:1: F401 'pytest' imported but unused./test_random_number.py:5:1: E302 expected 2 blank lines, found 1./random_number.py:5:1: E302 expected 2 blank lines, found 1./random_number.py:15:1: E305 expected 2 blank lines after class or function definition, found 1./random_number.py:17:10: E211 whitespace before '('./random_number.py:17:80: E501 line too long (87 > 79 characters)假如我們不想包含測試用例的風(fēng)格檢查,我們可以在命令行中屏蔽相關(guān)文件,或者創(chuàng)建配置文件,在配置文件中屏蔽相關(guān)文件,這里介紹后者的使用方法:
# .flake8[flake8]exclude = ./test*這個配置的意義在于,將當(dāng)前目錄下,所有以test開頭的文件,都將會忽略python編碼規(guī)范的檢查,配置文件支持通配符的表達(dá)形式 。接下來看下最新的執(zhí)行結(jié)果:
[dechin@dechin-manjaro pytest]$ flake8./random_number.py:5:1: E302 expected 2 blank lines, found 1./random_number.py:15:1: E305 expected 2 blank lines after class or function definition, found 1./random_number.py:17:10: E211 whitespace before '('./random_number.py:17:80: E501 line too long (87 > 79 characters)我們發(fā)現(xiàn)前面出現(xiàn)的關(guān)于測試用例中的編碼規(guī)范,已經(jīng)不在這個列表的范圍了 。這個列表中的問題我們一般最好是處理下,但是如果遇到一些判斷不需要處理的規(guī)范,則同樣可以在配置文件中添加相應(yīng)的規(guī)范ID,這里僅作示例使用,前面顯示的編碼規(guī)范問題后面都會改 。如下所示就是兩個忽略:
# .flake8[flake8]exclude = ./test*ignore = E302, E305對應(yīng)的執(zhí)行結(jié)果如下所示:
[dechin@dechin-manjaro pytest]$ flake8./random_number.py:17:10: E211 whitespace before '('./random_number.py:17:80: E501 line too long (87 > 79 characters)我們發(fā)現(xiàn)被忽略的問題已經(jīng)沒有顯示了 。flake8還有一個特點,是可以配置max-complexity,其采用的基本復(fù)雜性計算方法為McCabe度量法,可以參考這篇博客中的介紹內(nèi)容,這里就不過多的贅述 。為了更加美觀簡明地看到輸出的結(jié)果,我們可以補(bǔ)充安裝一個組件flake8-html:


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: