unittest系列(三)unittest用例如何執行


在前面的分享中,我們分別講了unittest的相關流程以及相關斷言,那么很多人,都會問了unittest的用例,應該如何執行呢,這次,我們就來看看,unittest用例如何執行。
首先,我們可以使用pycharm運行。我們試着右鍵,發現不是我們想要的。

 

 
image.png

 

我們試着在if 右鍵的綠色箭頭運行發現,效果是一樣的。

 

 
image.png


那么我們到底在pycharm應該如何運行呢。

   我們點擊右上角的
 
image.png

 

選擇edit Configurations...

    看了下,我們直接運行的是tests,我們需要配置下
 
image.png

首先我們選中Python tests下面的,然后點擊-號。

    然后在python點擊+
 
image.png

 

選中python。點擊,然后我們去選中我們腳本的路徑即可

 

 
image.png

 

選中后,點擊apply,然后我們再點運行。

          右鍵還是點擊if前面的綠色按鈕都可以
 
image.png

 

我們看下結果

 

 
image.png

准確了執行我們所有的用例。

當然了,我們除了上面的方法還有,在終端運行。
可以直接打開,cmd或者終端,然后屬於python test.py 運行,或者點擊pycharm的Terminal,和終端一樣的效果。
直接python testdemoone.py 對應的名稱就可以。
我們要看測試執行的詳細信息怎么辦呢,其實也很簡單。

 

 
image.png

可以打印出來詳細的信息,比如測試用例的名稱。是否執行成功。

我們也可以執行模塊

python -m unittest testdemoone

執行結果如下

 

 
image.png

 

我們也可以執行具體的模塊的類

python -m unittest testdemoone.TestDemo

結果如下

 

 
image.png

 

也可以執行具體的方法

python -m unittest testdemoone.TestDemo.testone

結果如下

 

 
image.png

 

獲取幫助選項

python -m unittest -h

 
image.png

 

 
image.png

 

假如我們在執行測試用例的時候,我們想要測試用例執行到錯誤的地方就停止怎么辦呢,其實很簡單

python testdemoone.py -f

我們把testdemoone.py 修改下:

import unittest
class TestDemo(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def testone(self):
self.assertEqual(1,2)
def testtwo(self):
self.assertEqual(1,1)
if name=="main":
unittest.main()

那么我們執行下面的命令,如何展示呢

python testdemoone.py -f

結果如下

 

 
image.png

我們可以看到,當執行失敗后,程序執行就直接退出了。

上文文中的testdemoone.py如下:

import unittest
class TestDemo(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def testone(self):
self.assertEqual(1,2)
def testtwo(self):
self.assertEqual(1,1)
if name=="main":
unittest.main()

假如我們想要探索執行目錄下面所有的測試用例,我們應該怎么去執行呢,可以在目錄這么執行.

python -m unittest discover

展示如下:

 

 
image.png

 

在我們去探索執行目錄下面,我們要想看到和執行單個文件一樣的詳細信息怎么辦呢。其實也很簡單,直接加-v即可。

python -m unittest discover -v

執行結果如下:

 

 
image.png

我們要探索制定文件下的怎么辦呢,其實很簡單

python -m unittest discover -v -s testone

運行結果如下

 

 
image.png

 

我們要模糊匹配文件怎么辦

命令如下

python -m unittest discover -v -s testone -p 'test*.py'

結果如下:

 

 
image.png


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM