真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

rf使用python函數(shù)的簡單介紹

RF自定義庫

1、自定義的庫

創(chuàng)新互聯(lián)建站是一家專注于成都網(wǎng)站制作、成都做網(wǎng)站與策劃設(shè)計,福鼎網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:福鼎等地區(qū)。福鼎做網(wǎng)站價格咨詢:18982081108

2、使用自定義庫

類或者模塊的形式。

模塊名稱 = 庫名。

模塊名稱和類名保持一致 = 庫名

如果是類:ROBOT_LIBRARY_SCOPE = "GLOBAL"

使用:

Library 庫名-相對路徑

按照其他庫的關(guān)鍵字調(diào)用方式一樣。

創(chuàng)建測試庫類/模塊

靜態(tài)(Static)API

最簡單的辦法是實現(xiàn)一個模塊(用Python),或者類(用Python或Java),其中的方法(methods)直接映射為關(guān)鍵字名稱。關(guān)鍵字接受和方法相同的參數(shù)。

創(chuàng)建測試庫類或模塊

測試庫的實現(xiàn)可以是Python模塊,也可以是Python或Java類。

如果是Python模塊,使用 all? =['函數(shù)名稱']來指定哪些函數(shù)是你想要被RF識別為關(guān)鍵字的。

參看RF自帶庫DateTime

python類的可參看String庫、seleniumLibrary庫等。

通過屬性ROBOT_LIBRARY_SCOPE來控制

這個屬性是一個字符串,可以有以下三種取值:

TEST CASE

為每個測試用例創(chuàng)建新的實例。如果有suite setup和suite teardown的話,同樣也會新建。這是默認(rèn)行

TEST SUITE

為每個測試集創(chuàng)建新的實例,最底層的測試集,也就是有測試用例文件組成的測試集,擁有屬于自己的測試庫實例,高層的測試集,都有屬于自己的測試庫實例。

GLOBAL(最常用)

整個測試執(zhí)行過程中只有一個實例被創(chuàng)建。所有的測試集合測試用例共享這個實例。通過模塊創(chuàng)建的測試庫都是全局的。

注解

如果一個測試庫被導(dǎo)入多次,每次使用不同的參數(shù),則不管有沒有定義作用域,每次都會新建一個實例。

寫了一段python的測試腳本,想導(dǎo)入到RF里面運行,請問怎么操作

如果是命令行的,一般是捕獲ctrl-c事件吧。importsignalimportsysdefsignal_handler(signal,frame):print('YoupressedCtrl+C!')sys.exit(0)signal.signal(signal.SIGINT,signal_handler)print('PressCtrl+C')signal.pause()

RF變量的共享使用、python測試庫

Variable表中聲明變量

資源文件里面創(chuàng)建變量

和套件文件中的用戶關(guān)鍵字一樣,套件文件中的變量表里面的變量,其作用范圍只是該套件文件。我們可以定義在資源文件中。資源文件變量的定義,和上述測試套件文件中幾乎一樣,我們只需拷貝Variables表到資源文件中即可,注意資源文件中不可存在*** Test Cases ***測試用例。

rc.robot 資源文件

test.robot 測試套件

變量文件

也可以使用python模塊文件提供公共變量給RF使用。只需要直接定義變量就可以了

語法完全就是python 例如:

變量文件聲明的時候,可以使用絕對路徑,也可以使用相對路徑。使用相對路徑的時候,RF搜索變量文件規(guī)則和搜索資源文件搜索規(guī)則一樣:

首先在當(dāng)前文件的目錄匹配收縮,如果找不到,就在Python的模塊搜索路徑中搜索

上面的*** Settings ***變量文件路徑是這樣寫的 Variables ./rf/rc.py

是因為rc.py所處的路徑是這樣的,如下圖

但是這樣不好的地方是:

每個RF文件的路徑不一樣,導(dǎo)致每個RF文件導(dǎo)入變量文件的寫法都不同,而且一旦移動了目錄,就要修改里面的寫法,比如

Variables ./rf/rf/rc.py

一種推薦的做法就是統(tǒng)一相對于項目根目錄,假設(shè)項目根目錄是rf,就需要像下面這樣

也可以在命令行參數(shù)中直接指定變量文件,就可以不用在RF中聲明了

擴(kuò)展關(guān)鍵字

使用python測試庫,模塊文件名就是測試庫的名字

定義在python模塊中的函數(shù),名稱前有_前綴的不會作為關(guān)鍵字。

Python模塊定義好以后,RF就可以使用它了,我們可以這樣使用上面定義的測試庫,要注意的是,要保證其在Python模塊的搜索路徑中,這樣RF才能找到它

RF在使用關(guān)鍵字的時候,中間可以加上任意的空格,并且大小寫也可以任意

自己定義關(guān)鍵字名字 _hehe不會作為關(guān)鍵字被rf使用

python類作為測試庫

tlib2.py

庫的搜索規(guī)則

RF搜索庫完全是按照python的模塊的搜索規(guī)則來的

如果python庫是在一個包中,比如

pylib/login/rightpass.py

聲明的時候,可以在RF文件像python導(dǎo)入包里面的模塊那樣的語法,如下

*** Settings ***

Library pylib/login/rightpasswd.py

如果導(dǎo)入的庫中存在模塊的引入,引入的模塊要以加入pythonpath的路徑來寫否則會報錯

如果存在繼承的情況,只要導(dǎo)入子類就可使用父類的方法,要注意模塊導(dǎo)入時的路徑。

父類

子類

robot用例

總結(jié)如下:

1.在settings中聲明資源文件和變量文件:

路徑,目錄之間的分隔符用斜杠 / 而不是點 .

2.在settings中聲明測試庫:

路徑,目錄之間的分隔符,可以用點 . 也可以用斜杠 /

路徑,目錄之間的分隔符用點后面不加py,用斜杠后面加.py

RF 關(guān)鍵字、變量與循環(huán)

關(guān)鍵字的使用

RF的能力是由關(guān)鍵字提供的,所以我們必須對RF的常用關(guān)鍵字有個了解,這樣才能把RF用好

常用的RF關(guān)鍵字就在RF的標(biāo)準(zhǔn)庫中

關(guān)鍵字參數(shù)

第一列是關(guān)鍵字的名稱

第2列是關(guān)鍵字的參數(shù)

常用關(guān)鍵字

set variable 只支持賦值一個字符串給變量,如果我們想賦值一個整數(shù),或者浮點數(shù),需要用Convert To integer Convert To Number

如果我們想把一個數(shù)字作為關(guān)鍵字的參數(shù),可以使用數(shù)字變量

Should be true 與python兩個區(qū)別:

1.變量前面加個$符號

2.不能中間有多于兩個空格

認(rèn)識測試庫

通常,關(guān)鍵字是由測試哭提供的。其實測試庫就是python模塊文件。

關(guān)鍵字就是python庫里面的函數(shù)和類的方法。

RF本事就是python程序,所以它的尋找?guī)煳募脑砗蚿ython是一樣的。最終是通過sys.path

我們在哪個目錄下面運行robot,哪個目錄就是當(dāng)前工作目錄當(dāng)前工作目錄就是在sys.path里面的。所以我們房子啊當(dāng)前目錄下面的python模塊文件,直接就能被找到

RF腳本使用函數(shù)名、方法名、大小寫不敏感

庫的導(dǎo)入

要使用測試哭提供的關(guān)鍵字,我們必須要聲明導(dǎo)入庫當(dāng)然一個特例:除了RF的builtin庫的關(guān)鍵字,不需要聲明。

庫的名稱在RF里面是大小寫敏感的。

有的庫,在導(dǎo)入的時候,可以提供參數(shù),比如SeleniumLIbrary

importing 鏈接,點開,有參數(shù)就是導(dǎo)入可以設(shè)置的參數(shù)

timeout=5.0

run_on_faullure=Capture Page Screenshot

screenshot_root_directory=None

其實這些導(dǎo)入時帶參數(shù)的庫,對應(yīng)的測試庫都是用類實現(xiàn)的

這些參數(shù)就是類的初始化方法init里面的參數(shù)

變量的用法

RF中的變量,實質(zhì)上就是一個python變量,他只想一個python對象。

所以RF的變量對應(yīng)的是什么Python對象,他就是什么類型的對象

循環(huán)

RF用:FOR來實現(xiàn)循環(huán),沒有while循環(huán)

對應(yīng)的文檔解釋在這里

:FOR \ 為舊語法 、

FOR END為新語法

range用法

python中,我們常常用到range方法,RF也有類似的支持


分享文章:rf使用python函數(shù)的簡單介紹
瀏覽地址:http://weahome.cn/article/hgdhco.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部