qc

贊助商連結:
軟件截圖:
qc
軟件詳細信息:
版本: 0.1
上傳日期: 14 Apr 15
開發: Peter Scott
許可: 免費
人氣: 11

Rating: 4.0/5 (Total Votes: 1)

贊助商連結:

QC是一個測試工具,它可以讓你寫,你希望持有真,讓計算機生成的隨機測試用例來檢查這些屬性實際持有&NBSP性能;例如,如果你寫的壓縮和解壓縮功能一些數據壓縮程序,一個明顯的特性測試是壓縮和解壓縮字符串還給原來的字符串。這裡是你如何能表達的:
進口單元測試
進口QC
類TestCompression(unittest.TestCase的):
  @ qc.property
 高清test_compress_decompress(個體經營):
 “”“測試的壓縮和解壓縮返回原始數據”“”
 數據= qc.str()#的任意字符串。值是隨機的。
  self.assertEqual(數據,解壓縮(壓縮(數據)),再版(數據))
這是用Python的內置單元測試框架,一個普通的測試(這就是為什麼有這麼多的樣板)。或者,你可以做同樣的事情用不同的測試框架,像微創詳細,很愉快的鼻子。在@ qc.property裝飾運行裝飾功能好幾次,每一次返回的值由功能,如qc.string()是不同的。換句話說,快速檢查是幾乎每一個單元測試框架在那裡兼容;它不是特別苛刻。
像qc.str功能(),qc.int(),等等,產生某種類型的任意值。在上面的例子中,我們斷言屬性也適用於所有的字符串。當你運行測試,快速檢查會產生隨機字符串進行測試。
你會注意到,我說的“隨機”,而不是“隨機”。這是故意的。值的分配進行調整,以包括含有英文文本有趣的值,比如空字符串,或者在中間的NULL字符的字符串,或字符串。在一般情況下,快速檢查試圖給聰明刁鑽值和隨機性的一個很好的組合。這基本上是你會做什麼,如果你有手工編寫真正徹底的測試案例,但你不必這樣做。在實踐中,計算機有什麼構成理智的數據更少先入為主,所以經常會發現,決不會想到你寫測試用例的錯誤。它不知道如何下意識避免錯誤。
你並不限於內置任意值的功能。你可以用它們作為構建模塊生成自己的。例如:
Point類(對象):
 高清__init __(個體經營,X,Y):
  self.x,self.y =浮動(X),浮點(Y)
DEF點():
 “”“獲得任意點。”“”
  X = qc.int(-20,20)
  Y = qc.int(-34,50)
 返回點(X,Y)
那麼你可以用它來在性能產生任意點的值。這裡有一個鼻式的測試:
@ qc.property
高清test_triangle_inequality():
  PT =點()
 斷言ABS(pt.x)+ ABS(pt.y)> =的Math.sqrt(pt.x ** 2 + pt.y ** 2),(pt.x,pt.y)
當你運行它,神奇的事情發生了:快速檢查將嘗試生成Point類為x和y的變量值刁鑽,在一起,所以你會看到像點(0,0),(1,1),( 0,1),(385904,0),以及完全隨機的像(584,-35809648)。換句話說,而不是僅僅繪製x和y值從隨機數與在它的一些棘手值流,快速檢查實際上將嘗試生成x和y坐標的棘手的組合。
函數獲得任意數據
- INT(低,高)為整數,可選範圍低和高之間。
- 長(低,高)給出了多頭,可選範圍低和高之間。
- 浮動(低,​​高)給出的花車,可選範圍低和高之間。無無窮大或NaN值。
  STR(長度=無,MAXLEN =無)給出類型str的字符串。編碼是UTF-8。如果長度給出,琴弦會正​​是長。如果的maxlen給出,字符串長度將至多最多maxlen字符。
- unicode的(長度=無,MAXLEN =無)給出類型的unicode的unicode字符串。如果長度給出,琴弦會正​​是長。如果的maxlen給出,字符串長度將至多最多maxlen字符。
- 名()給出的名字,以Unicode。這些範圍從平淡無奇,就像“約翰·史密斯”,在異國情調 - 含非中斷空格,或電子郵件地址,或Unicode字符的基本多文種平面之外的名稱。這是,如果有什麼,比的名字少倒行逆施,你會在一個足夠大的一套互聯網數據看。
- nameUtf8()是相同的名稱()進行編碼('UTF8')。
- fromlist裡(項目)返回從列表中隨機物品。這是創建自己的任意數據發生器的功能是非常有用。
- randstr(長度=無,MAXLEN =所有的sys.maxint)給出了隨機字節字符串。如果長度給出,琴弦會正​​是長。如果的maxlen給出,字符串長度將至多最多maxlen字節。
由海峽和Unicode產生的字符串是隨機的,但一些努力已投入使他們充分倒行逆施,以揭示錯誤在一大堆的字符串處理代碼。該名單是鬆散的基礎上看到的名字處理代碼崩潰的真實世界的數據,一遍又一遍又一遍,因為它變得越來越明顯,世界是瘋狂的恐怖記憶,我們真的在劫難逃。 (這種感覺傳遞,一旦你得到足夠的測試覆蓋率和事情終於停止崩潰。有希望!)
在qc.arbitrary名稱和字符串例如數據可能是有趣的,因為更多的deteministic測試用例的數據源。隨意借用它的任何。在內部是魔術,但神奇的內部零件,最有趣的是在qc.arbitrary和QC

要求

  • 在Python中

類似的軟件

意見 qc

評論沒有發現
添加評論
打開圖片!