国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

關(guān)于PyCharm中Python測試不是run_testname 而是run_unittest_in

MiracleWong / 1328人閱讀

摘要:自動生成測試文件,再添加一些內(nèi)容,對照下圖那個是干嘛的,有什么用,系統(tǒng)自動生成,我暫時還不知道我也是看了別人的博客論壇后自己總結(jié)的,有很多原理性的東西我并不太了解,但是我會繼續(xù)努力學(xué)習

本人是python初學(xué)者
看的課本是《Python編程從入門到實踐》【美】Eric Matthes 著;袁國忠 譯,中國工信出版集團,人民郵電出版社出版
課本指定編輯器是Geany,用了一小段時間后,朋友推薦PyCharm,所以就用的PyCharm編輯python
在課本的“測試函數(shù)”這一章中,PyCharm無法顯示書中所示的結(jié)果,所以就了解了一下
PS:在Geany中是完全再現(xiàn)書中的結(jié)果的

要測試的方法:name_function.py中的get_formatted_name()方法:

書中編寫的方法如圖:

print("**** "+__name__)

這個是為了看__name__的值,記得要注釋掉,否則別的py文件調(diào)用這個py文件的時候會運行
末尾和書里的有點不一樣

unittest.main()

if __name__=="__main__":
    unittest.main()

都可以,但是最好還是第二種,為了避免別的 .py文件引用該文件后會運行該文件的

uniittestmain()方法,

看不懂的下面就是解釋
這樣的代碼,結(jié)果不一定 跟書里的一樣,為什么呢?
這要先從__name__這個屬性開始說:
比如一個python文件,命名為a.py
當從編輯器中直接運行a.py或者從命令行中直接運行a.py,那么a.py的__name__屬性就是"__main__"
如果另外有一個b.py,從b.py中導(dǎo)入a.py,即b.py中import a,然后運行a.py,那么a.py的__name__屬性就是a.py的文件名,也就是‘a(chǎn)’
詳情見一位大神寫的:
鏈接描述
python中

if __name__ == "__main__"

說完__name__,大家就要看運行該文件時實際運行的什么
為了更明白地說明問題,不要用ctrl+shift+F10運行,要點右鍵,出來菜單后點運行
正常來說,只有運行該py文件,結(jié)果才能跟書里的一樣
拿上面圖片里的例子來說,要運行test_name_function.py才能出來書里的結(jié)果,即點右鍵,出來菜單后點 run"test_name_function",但是實際上點了右鍵后出來的卻是 run"Unittest in test_name_function"
這個的意思好像是在test_name_function中運行Unittest,還是在Unittest運行test_name_function,我也不太清楚,總之,好像是一個引用,這就導(dǎo)致__name__屬性變了,不是"__main__",而是"test_name_function",導(dǎo)致出不來書中的結(jié)果,即下圖

運行結(jié)果不是我們想要的

這個問題的關(guān)鍵就在于,怎樣將
run"Unittest in test_name_function"
變成
run"test_name_function"
我總結(jié)了兩種方法:
法一:
右擊,菜單中點‘open in terminal’即在命令行中運行,出來命令行后輸入

python test_name_function.py

回車運行,然后就會出現(xiàn)書中的結(jié)果,此時不要關(guān)閉命令行,根據(jù)結(jié)果修改.py文件,ctrl+S保存后,在命令行中直接按方向鍵的上鍵,重復(fù)上次的命令,這樣就不用每次都敲入命令了
法二:
右上角,打開下拉菜單,如圖

點擊 Edit Configurations,編輯配置文件,打開后如下圖

圖中python test下的就是Unittest in test_name_function,選中,點擊左上角的紅色減號,去掉這一條,然后選中python test 上面的python,點擊左上角的綠色加號,出來下拉菜單選python選項,然后出來的界面,點script path最右邊的小方框,選中py文件路徑,點OK
如圖

再在最上面的Name一欄中把unnamed刪掉,寫入名字,最好是py文件的文件名,直接從script path中把名字那一段復(fù)制粘貼上去就行
然后點右下角apply,再點ok
退出來到test_name_function.py文件中,右擊,發(fā)現(xiàn)是 run"test_name_function"選項,點擊運行,出來結(jié)果和書上的一樣

補充:
test_name_function.py是為了給name_function.py中的get_formatted_name()方法測試而創(chuàng)建的
到 test_name_function.py 中,光標放到 get_formatted_name 這個名字上,ctrl+shift+T,出來選項,點擊“Create New Test。。。”自動生成測試文件,再添加一些內(nèi)容,對照下圖

PS:
那個self.fail()是干嘛的,有什么用,系統(tǒng)自動生成,我暫時還不知道
我也是看了別人的博客、論壇后自己總結(jié)的,有很多原理性的東西我并不太了解,但是我會繼續(xù)努力學(xué)習!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/41566.html

相關(guān)文章

  • 以后再有人問你selenium是什么,你就把這篇文章給他

    摘要:不同目標的自動化測試有不同的測試工具,但是任何工具都無不例外的需要編程的過程,實現(xiàn)源代碼,也可以稱之為測試腳本。 寫在最前面:目前自動化測試并不屬于新鮮的事物,或者說自動化測試的各種方法論已經(jīng)層出不窮,但是,能夠在項目中持之以恒的實踐自動化測試的團隊,卻依舊不是非常多。有的團隊知道怎么做,做的還不夠好;有的團隊還正在探索和摸索怎么做,甚至還有一些多方面的技術(shù)上和非技術(shù)上的舊系統(tǒng)需要重構(gòu)……...

    Keven 評論0 收藏0
  • 一些 PyCharm 的使用和設(shè)置建議

    摘要:顯示工具欄默認并不顯示工具欄,在大多數(shù)工具欄都放了最常用的操作,你可以通過主菜單顯示菜單欄來顯示工具欄。工具欄顯示出來后你還可以通過右鍵定制上面的按鈕,我會把一些跟相關(guān)的操作放到上面,比如,,默認它只加了和。 PyCharm是我強烈推薦的Python IDE,如果你有EDU的郵箱可以直接申請專業(yè)版授權(quán),或者就使用社區(qū)版,功能上并沒有太多縮減,日常開發(fā)也完全夠用。 如果是首次安裝PyCh...

    Drinkey 評論0 收藏0
  • 為什么你的python版本一團糟?因為少了這個操作

    摘要:坑人的版本的版本問題一直是個廣被吐槽的黑點。這些版本的沖突在開發(fā)中十分常見,而和的版本差異又加劇了這一問題。從而避免與其他版本發(fā)生干擾。 坑人的版本 Python 的版本問題一直是個廣被吐槽的黑點。以至于有人調(diào)侃說: Python 是世界上最好的兩種語言! 在這里我要說明下,對于初學(xué)者來說,版本間的語法差異其實并不大。現(xiàn)在剛開始學(xué) Python 的人,放心大膽地 用最新版本 即可。業(yè)內(nèi)...

    ThreeWords 評論0 收藏0
  • 如何開發(fā)一個 PyCharm 插件

    摘要:今天我們說說怎么搭建環(huán)境自己寫一個插件。插件工程目錄結(jié)構(gòu)一個典型的插件目錄結(jié)構(gòu)就像下圖。如果成功那么在工程目錄就會生成一個同名的文件。 PyCharm 是很多 Python 開發(fā)者優(yōu)先選擇的 IDE,功能強大,跨平臺,提供免費社區(qū)版,非常良心。如果你想自己給PyCharm添加一些功能怎么辦呢?有兩個辦法: 通過提需求實現(xiàn),到 JetBrains 的 github 去提issue或者自...

    LdhAndroid 評論0 收藏0
  • Python數(shù)據(jù)科學(xué)環(huán)境:Anaconda 了解一下

    摘要:我自己印象最深的是在上安裝加密和科學(xué)計算模塊,折騰了很久。這個精裝是面向數(shù)據(jù)科學(xué)的,同時也保留了你自己進一步改裝的空間。數(shù)據(jù)科學(xué)庫包環(huán)境管理工具,這幾樣就是的主要功能。 幾乎所有的 Python 學(xué)習者都遇到過 安裝 方面的問題。這些安裝問題包括 Python 自身環(huán)境的安裝、第三方模塊的安裝、不同版本的切換,以及不同平臺、版本間的兼容問題 等。當你因為這些問題而卡殼,一行代碼沒寫就已...

    shaonbean 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<