rf無法識別特定的python函式 斷言函式 RF

2021-10-21 08:05:27 字數 2068 閱讀 1191

測試用例的目的是要驗證一些操作否符合我們的預期結果,所以在測試用例中,斷言函式是必不可少的一項。我們做的每一步操作都會有預期的結果,為了保證操作得到的結果符合預期,我們需要在測試用例中新增斷言,來保證實際結果和預期結果一致。那麼先讓我們來認識一些常用的斷言函式:

1、should be equal 與should not be equal

我們在第一行設定乙個變數,並賦值1,第二行,意思是$應該等於1

執行:

會發現只是列印出了變數的值,一般來說,斷言函式只起斷言作用,符合斷言沒有任何操作,不符合則報錯:

現在我們把$值改為2,斷言不變,再執行:

我們發現用例報紅,並且在這裡給出了斷言出錯。

should not be equal恰好相反,用來斷言不相等。

2、should be empty與should not be empty

斷言為空或不為空。

如上圖,create list是乙個建立列表的函式,我們沒有為列表賦值,則$是乙個空列表,執行:

可以看到列印出了預期的空列表,並且用例成功執行。

3、should contain、should not contain與should contain x times

這裡先說明一下,列表變數也可以用@表示,但$既可以表示單個變數,也可以表示列表、字典,用起來比較方便~~~ 我們建立了乙個列表,內涵1、2、3值,斷言列表中含有1:

執行通過,列印出了變數值,可以看到正如我們預期,$是乙個列表,這裡發現列表裡每乙個值前面都有乙個u,這是因為rf預設是unicode編碼,這裡的u對你的用例或斷言都沒有影響的。

should not contain不必解釋。我們來說一下should contain x times,根據英文翻譯即可,就是應該含有某值x次:

這裡的斷言意思是變數$中應該包含2個1,執行:

正如我們預期。

以上列出的是我在工作中最長用的斷言,除此之外還有很多,他們的意思其實可以根據英文翻譯即可,畢竟老外也是按著他們的目的寫出來的:

如果對軟體測試、介面測試、自動化測試、面試經驗交流。感興趣可以加軟體測試交流:1085991341,還會有同行一起技術交流。

should be equal as numbers與should not be equal as numbers

should end with與should not end with

should start with與should not start with

should match與should not match

以上是大家在工作中可能遇到的,如果用得上用法可以f5查詢即可。

有時候我們的斷言函式不能滿足我們的需求,這時就需要我們用python自己寫指令碼,實現相應的邏輯,然後匯入系統關鍵字即可。

git無法識別新增的檔案

h檔案和cpp檔案的名稱一定要區分大小寫。如果資料夾名中有大寫字母,使用git add f 的時候,也要使用大寫字母。否則git不會報錯,但是,sourcetree依然無法 對該檔案進行版本控制。工作目錄中,新建乙個檔案,比如乙個.h和.cpp檔案。但是,git無法識別這些檔案。用git statu...

python 刪除爬蟲裡無法識別的表情字元

def character a try 如果報錯,則獲取報錯的字串資訊 dk.write a dk.close except exception as error 處理字串,獲取報錯的內容 u str error split u error str u 1 split b re.sub u erro...

usb creator錯誤 無法識別分割槽號 的解決

結果一開始就碰到個問題。因為以前都是刻光碟安裝的,今天準備試一下用u盤安裝,於是用現有的ubuntu904裡的usb creator來建立啟動u盤,結果可恥滴失敗了,報的錯誤為 無法識別分割槽號 用中英文分別google了一遍,沒找到解決方案,不過知道了大概的問題所在就是u盤上的分割槽表不對。因為一...