框架設計篇之8-unittest執行腳本方法之addTest
本文開始介紹如何通過unittest來管理和執行測試用例,這一篇介紹unittest下addTest()方法來載入測試用例到測試套件中去。為了演示效果,我在前面文章的腳本基礎上,新建了一個測試腳本,這個測試腳本有一個測試用例,加上前面的測試腳本,一共就是三個測試用例,前面那個測試類裡面包括兩個測試用例。
新建的測試腳本,test_get_page_title.py代碼如下:
代碼:
# coding = utf-8
import unittest
from framework.browser_engine import BrowserEngine
from pageobjects.baidu_homepage import HomePage
class GetPageTitle(unittest.TestCase):
@classmethod
def setUpClass(cls):
browser = BrowserEngine(cls)
cls.driver = browser.open_browser(cls)
@classmethod
def tearDownClass(cls):
def test_get_title(self):
homepage = HomePage(self.driver)
print (homepage.get_page_title())
今天來學習下,如果載入這兩個測試類文件裡面的3個測試腳本。在unittest下有一個管理測試套件的叫TestSuit(),我們要使用這個測試套件,需要先初始化一個suite實例,然後這個實例有一個addTest()的方法,可以載入不同類裡面的不同測試函數,格式這樣的 addTest(測試類的類名(『測試函數名稱,就是test開頭的函數』)),我們在testsuites這個包下新建一個TestRunner.py文件用來管理我們的用例啟動方式。
來看看這個TestRunner.py的內容
代碼:
# coding = utf-8
import unittest
import testsuites
from testsuites.test_baidu_search import BaiduSearch
from testsuites.test_get_page_title import GetPageTitle
suite = unittest.TestSuite()
suite.addTest(BaiduSearch("test_baidu_search"))
suite.addTest(BaiduSearch("test_search2"))
suite.addTest(GetPageTitle("test_get_title"))
if __name__=="__main__":
#執行用例
runner=unittest.TextTestRunner()
runner.run(suite)
運行這個TestRunner.py,會在Pycharm的控制台輸出類似這樣結果:
----------------------------------------------------------------------
Ran 3 tests in 28.065s
OK
Process finished with exit code 0
這個方法有沒有局限性呢?當然有,加入你有幾百個測試類,你是不是也一直這樣手動去添加?有沒有其他更好的方法去載入我們的測試腳本,關於這個問題,請看下一篇文章。
歡迎關注公眾號:凱哥Java


※框架設計篇之7-進一步實現POM和可能遇到問題解決辦法1
※提高mysql千萬級大數據SQL查詢優化幾條經驗1
※框架設計篇之6一個類文件多個測試方法情況下測試固件寫法
※框架設計篇之3-什麼是POM框架內封裝基類和實現POM
※自動化框架設計篇之2-簡單介紹unittest單元測試框架
TAG:凱哥java |
※PentestPackage-Pentesting腳本集合
※在 Linux 上用 Bash 腳本監控 messages 日誌
※首款基於Pascal腳本語言的全功能Web伺服器Moon Http Server即將上線
※如何利用PowerShell診斷腳本執行命令並繞過AppLocker
※利用ngx_python模塊嵌入到Python腳本
※Windows創建計劃任務定時執行Python腳本
※Linux rsync同步文件腳本
※如何在Windows下開發Python:在cmd下運行Python腳本
※linux腳本中父shell與子shell 執行的幾種方式
※Redis 腳本
※Windows Defender ATP機器學習和AMSI:發掘基於腳本的攻擊
※python腳本監控-用python監控python腳本執行情況(日誌記錄)
※Python腳本將ABAQUS結果導出到excel的方法
※案例六:shell腳本監控httpd服務80埠狀態
※lunix 腳本運行時,自動生成hs err pid14165.log
※Web安全之Openfire的插件腳本上傳漏洞復現
※微軟太愛 Linux 了,它的 R Open 安裝腳本用 rm 命令刪除了/bin/sh
※使用AutoHotkey和Excel中嵌入的惡意腳本來繞過檢測
※入侵Gentoo GitHub賬號的攻擊者在構建腳本里加入 rm-rf/×命令
※如何在 Linux 或者 UNIX 下調試 Bash Shell 腳本