我有一個套接字程序 - 2個腳本,服務器和客戶端。在服務器端,我有許多功能。我想測試這些功能。我是python的新手。找到一種叫pytest的東西。所以對於我服務器端的所有功能,我做了這樣的事情。pytest收集0項
def fun(a):
// fn definition
return b
def test_fun():
assert fun(test_case) == "expected value"
我將此服務器腳本命名爲test_server.py並導入了pytest。我已導入在客戶端pytest也並改名爲腳本,然後test_client.py當我運行使用
py.test test_server.py
然後
py.test test_client.py
在服務器端它說收集0項,就是這樣。它不收集任何。任何想法我錯了。順便說一句,我嘗試了簡單的Python代碼。 pytest工作正常。是pytest不適用於套接字編程還是我犯了什麼錯誤?在沒有使用pytest的情況下代碼也沒有錯誤。這是工作完全正常,當我做
蟒蛇test_server.py
然後,
蟒蛇test_client.py
非常感謝。我知道py.test將以test_開頭的函數視爲測試用例,但我不知道它只執行那些函數。現在我可能無法像你說的那樣做,因爲我需要在服務器端進行測試,而不是在客戶端進行測試。所以,我把服務器代碼中負責套接字連接的部分放在一個函數中,並用test_命名,現在它收集所有項目。 –
我在服務器端有很多功能需要測試。如果一個函數在被調用後被定義,它會向我顯示一個錯誤,說明它在賦值之前被使用。好吧,這是預料之中的。但是如果我在使用函數定義之前,服務器端就掛起來,什麼都不顯示。我無法看到我出錯的地方。有人可以指點我可以學習pytest如何與套接字編程一起使用的任何材料。至少使用pytest看到執行流程會幫助我。 –