日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
對Python測試問題全解析

在向大家詳細介紹Python測試之前,首先讓大家了解下Python測試,然后全面介紹Python測試,Python測試還是比較常用的,于是我研究了一下Python測試,在這里拿出來和大家分享一下,希望對大家有用。

港口ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

正如在第一篇文章中看到的,py.test 和 nose 都支持編寫為簡單函數(shù)的測試,這會大大簡化 Python 測試的編寫:

 
 
 
  1. Traceback (most recent call last):  
  2.   File "test_partial_pickle.py", line 12, in  
  3.     s = pickle.dumps(partial(add, 10))  
  4.   File "/Library/Frameworks/Python.framework/Versions/  
  5.      2.5/lib/python2.5/pickle.py", line 1366, in dumps  
  6.      Pickler(file, protocol).dump(obj)  
  7.   File "/Library/Frameworks/Python.framework/Versions/  
  8.      2.5/lib/python2.5/pickle.py", line 224, in dump  
  9.      self.save(obj)  
  10.   File "/Library/Frameworks/Python.framework/Versions/  
  11.      2.5/lib/python2.5/pickle.py", line 306, in save  
  12.      rv = reduce(self.proto)  
  13.   File "/Library/Frameworks/Python.framework/Versions/  
  14.      2.5/lib/python2.5/copy_reg.py", line 69, in _reduce_ex  
  15.      raise TypeError, "can't pickle %s objects" % base.__name__  
  16. TypeError: can't pickle partial objects 

如果只需要在某一特定環(huán)境中檢查組件行為,那么測試函數(shù)和更傳統(tǒng)的測試類都可以滿足需要。但是,如果要執(zhí)行一系列測試,它們基本相同,只有一些參數(shù)有差異,那么怎么辦?

為了更容易實現(xiàn)這種測試,避免多次復制并粘貼測試函數(shù)以及設置惟一的名稱,py.test 和 nose 都支持衍生測試(generative test)。這里的思想是,您提供一個測試函數(shù),它實際上是一個迭代器,然后使用它的 yield 語句并提供調用參數(shù),從而返回一系列函數(shù)。例如,如果希望針對一系列 Web 瀏覽器運行一個測試,可以編寫下面這樣的代碼:

對于衍生Python測試,py.test 更方便。因此您能夠更加輕松的分辨出正在運行的測試,并在一個或多個測試失敗時理解測試報告,在每個元組中提供的第一項可以是一個名稱,它會作為測試名稱的組成部分輸出:

 
 
 
  1. Traceback (most recent call last):  
  2.   File "test_partial_pickle.py", line 12, in  
  3.     s = pickle.dumps(partial(add, 10))  
  4.   File "/Library/Frameworks/Python.framework/Versions/  
  5.      2.5/lib/python2.5/pickle.py", line 1366, in dumps  
  6.      Pickler(file, protocol).dump(obj)  
  7.   File "/Library/Frameworks/Python.framework/Versions/  
  8.      2.5/lib/python2.5/pickle.py", line 224, in dump  
  9.      self.save(obj)  
  10.   File "/Library/Frameworks/Python.framework/Versions/  
  11.      2.5/lib/python2.5/pickle.py", line 306, in save  
  12.      rv = reduce(self.proto)  
  13.   File "/Library/Frameworks/Python.framework/Versions/  
  14.      2.5/lib/python2.5/copy_reg.py", line 69, in _reduce_ex  
  15.      raise TypeError, "can't pickle %s objects" % base.__name__  
  16. TypeError: can't pickle partial objects 

在設計和編寫測試套件時,一個大問題是如何處理共同的 setup 和 teardown 代碼。許多真實的測試并不像本文給出的示例函數(shù)這么簡單;它們必須執(zhí)行一些復雜的操作,比如在Python測試中打開網(wǎng)頁并單擊 “Continue” 按鈕,然后檢查結果。在開始實際測試(比如打開頁面并單擊按鈕)之前,測試必須先完成一些步驟。

現(xiàn)在,考慮如果一百個功能性測試都要這樣執(zhí)行測試,會怎么樣。它們都需要通過調用共同的 setup 例程運行 Firefox,然后才能執(zhí)行自己的測試。與此相應,為了取消 setup 所做的操作,可能還有 teardown 。在設計和編寫測試套件時,一個大問題是如何處理共同的 setup 和 teardown 代碼。許多真實的測試并不像本文給出的示例函數(shù)這么簡單;

它們必須執(zhí)行一些復雜的操作,比如在 Firefox 中打開網(wǎng)頁并單擊 “Continue” 按鈕,然后檢查結果。在開始實際測試(比如打開頁面并單擊按鈕)之前,測試必須先完成一些步驟。


分享文章:對Python測試問題全解析
分享鏈接:http://www.5511xx.com/article/dhjdogp.html