中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站做導(dǎo)航的地圖seo模板建站

網(wǎng)站做導(dǎo)航的地圖,seo模板建站,品牌營銷策劃是什么意思,什么網(wǎng)站可以做模型掙錢Variable files包含的variables可以用于test data中(即測試用例)中。Variables可以使用Variables section或者從命令行設(shè)置。 但是也允許動態(tài)創(chuàng)建。 變量文件通常使用模塊實現(xiàn),有兩種實現(xiàn)方式。 1、直接從模塊中獲取變量 變量被指定為模塊…

Variable files包含的variables可以用于test data中(即測試用例)中。Variables可以使用Variables section或者從命令行設(shè)置。
但是也允許動態(tài)創(chuàng)建。

變量文件通常使用模塊實現(xiàn),有兩種實現(xiàn)方式。

1、直接從模塊中獲取變量

變量被指定為模塊的屬性。在簡單的情況下,語法是如此簡單,以至于不需要真正的編程。例如,創(chuàng)建一個變量,其值為指定的文本。這種方法的一個限制是它不允許使用參數(shù)。

MY_VAR = 'my value'

${MY_VAR}

2、從特殊函數(shù)獲取變量

變量文件可以有一個特殊的方法(例如 get_variablesgetVariables),它返回一個作為映射的變量。因為這個方法可以接收參數(shù),所以這種方法非常靈活。

另一種實現(xiàn)變量文件的方式是作為類,由框架來實例化這些類。在這種情況下,同樣可以將變量創(chuàng)建為屬性,或者從方法中動態(tài)獲取它們。此外,變量文件也可以以YAML和JSON格式創(chuàng)建。例如,可以使用get_variables方法來獲取這些變量。

使用變量文件

Setting section

所有的測試用例文件,可以在Setting section中使用Variables setting來導(dǎo)入變量文件。

*** Settings ***
Variables    myvariables.py
Variables    ../data/variables.py
Variables    ${RESOURCES}/common.yaml

命令行

--variablefile myvariables.py
--variablefile path/variables.py
--variablefile /absolute/path/common.py
--variablefile variablemodule
--variablefile arguments.py:arg1:arg2
--variablefile rootmodule.Variables:arg1:arg2

Getting variables directly from a module

基礎(chǔ)語法

VARIABLE = "An example string"
ANOTHER_VARIABLE = "This is pretty easy!"
INTEGER = 42
STRINGS = ["one", "two", "kolme", "four"]
NUMBERS = [1, INTEGER, 3.14]
MAPPING = {"one": 1, "two": 2, "three": 3}

Using objects as values

變量文件中的變量不僅限于只包含字符串或其他基本類型作為值,就像變量部分一樣。相反,它們的變量可以包含任何對象。在下面的示例中,變量包含一個Python字典,并且還有兩個從同一文件中實現(xiàn)的自定義對象創(chuàng)建的變量。

MAPPING = {'one': 1, 'two': 2}class MyObject:def __init__(self, name):self.name = nameOBJ1 = MyObject('John')
OBJ2 = MyObject('Jane')

Creating variables dynamically

import os
import random
import timeUSER = os.getlogin()                # current login name
RANDOM_INT = random.randint(0, 10)  # random integer in range [0,10]
CURRENT_TIME = time.asctime()       # timestamp like 'Thu Apr  6 12:45:21 2006'
if time.localtime()[3] > 12:AFTERNOON = True
else:AFTERNOON = False

Selecting which variables to include

當(dāng)Robot Framework處理變量文件時,它期望所有不以下劃線開頭的屬性都是變量。這意味著在變量文件中創(chuàng)建或從其他地方導(dǎo)入的函數(shù)或類也被視為變量。例如,在之前的示例中,除了MY_DICT、MY_PERSON、MY_INT、MY_FLOAT和MY_LIST這些變量之外,如果變量文件中還定義了math函數(shù)或get_area函數(shù),以及AREA1和AREA2變量,它們也會被當(dāng)作變量處理。

通常,這些額外的變量不會造成問題,但它們可能會覆蓋其他變量,導(dǎo)致難以調(diào)試的錯誤。為了避免這種情況,一種可能的做法是給不想作為變量的屬性加上下劃線前綴。這樣,Robot Framework就會忽略這些以下劃線開頭的屬性,不會將它們當(dāng)作變量來處理。

import math as _mathdef _get_area(diameter):radius = diameter / 2.0area = _math.pi * radius * radiusreturn areaAREA1 = _get_area(1)
AREA2 = _get_area(2)

Getting variables from a special function

另一種獲取變量的方法是在變量文件中定義一個特殊函數(shù)(也可以使用駝峰命名法)。如果這樣的函數(shù)存在,Robot Framework會調(diào)用它,并期望它返回一個Python字典,其中鍵是變量名,值是變量值。創(chuàng)建的變量可以像直接從模塊中獲取變量一樣,作為標(biāo)量、列表和字典使用。此外,還可以使用LIST__和DICT__前綴來更明確地創(chuàng)建列表和字典變量。下面的示例在功能上等同于第一個直接從模塊獲取變量的示例。

def get_variables():variables = {"VARIABLE ": "An example string","ANOTHER VARIABLE": "This is pretty easy!","INTEGER": 42,"STRINGS": ["one", "two", "kolme", "four"],"NUMBERS": [1, 42, 3.14],"MAPPING": {"one": 1, "two": 2, "three": 3}}return variables

get_variables 函數(shù)也可以接受參數(shù),這有助于改變實際創(chuàng)建的變量。函數(shù)的參數(shù)就像任何 Python 函數(shù)的參數(shù)一樣設(shè)置。當(dāng)使用變量文件時,參數(shù)在變量文件路徑之后指定,在命令行中它們用冒號或分號與路徑分隔。

以下是一個簡單的示例,展示了如何使用帶參數(shù)的變量文件。在一個更實際的例子中,參數(shù)可能是指向外部文本文件或數(shù)據(jù)庫的路徑,從中讀取變量。

variables1 = {'scalar': 'Scalar variable','LIST__list': ['List','variable']}
variables2 = {'scalar' : 'Some other value','LIST__list': ['Some','other','value'],'extra': 'variables1 does not have this at all'}def get_variables(arg):if arg == 'one':return variables1else:return variables2

Implementing variable file as a class

變量文件總是使用文件系統(tǒng)路徑來導(dǎo)入,因此類必須與它所在的模塊具有相同的名稱。

框架將使用無參數(shù)的方式創(chuàng)建類的一個實例,并從該實例中獲取變量。與模塊類似,變量可以直接定義為實例的屬性,或者從特殊方法 get_variables 中獲取。

當(dāng)變量直接在實例中定義時,所有包含可調(diào)用值的屬性都會被忽略,以避免從實例可能具有的方法中創(chuàng)建變量。如果你確實需要可調(diào)用的變量,你需要使用其他方法來創(chuàng)建變量文件。

在實踐中,這意味著如果你的變量文件名為 example_variables.py,那么它應(yīng)該包含一個名為 ExampleVariables 的類。當(dāng) Robot Framework 導(dǎo)入這個變量文件時,它會創(chuàng)建一個 ExampleVariables 類的實例,并從該實例中讀取變量。

如果你選擇使用 get_variables 方法來返回變量字典,你可以在該方法內(nèi)定義任何邏輯來生成變量,包括讀取外部文件、查詢數(shù)據(jù)庫或執(zhí)行其他計算。然而,直接在類實例中定義變量通常更簡單直接,但需要注意避免將方法作為變量暴露出來。

以下是一個簡單的例子,展示了如何在變量文件的類實例中直接定義變量

The first examples create variables from attributes. It creates variables and from class attributes and from an instance attribute. V A R I A B L E @ L I S T {VARIABLE}@{LIST} VARIABLE@LIST{ANOTHER VARIABLE}

class StaticExample:variable = 'value'LIST__list = [1, 2, 3]_not_variable = 'starts with an underscore'def __init__(self):self.another_variable = 'another value'

The second examples utilizes dynamic approach for getting variables. It creates only one variable .${DYNAMIC VARIABLE}

class DynamicExample:def get_variables(self, *args):return {'dynamic variable': ' '.join(args)}

Variable file as YAML

string:   Hello, world!
integer:  42
list:- one- two
dict:one: yksitwo: kaksiwith spaces: kolme
*** Variables ***
${STRING}     Hello, world!
${INTEGER}    ${42}
@{LIST}       one         two
&{DICT}       one=yksi    two=kaksi    with spaces=kolme

Variable file as JSON

變量文件也可以實現(xiàn)為 JSON 文件。與上一節(jié)討論的 YAML 類似,JSON 是一種數(shù)據(jù)序列化格式,旨在供人類和機器使用。它基于 JavaScript 語法,雖然不如 YAML 那么易于人類閱讀,但仍然相對容易理解和修改。以下示例包含與前面 YAML 示例完全相同的數(shù)據(jù):

{"string": "Hello, world!","integer": 42,"list": ["one","two"],"dict": {"one": "yksi","two": "kaksi","with spaces": "kolme"}
}

JSON 變量文件因其 .json 擴展名而自動被識別,并且它們可以像 YAML 變量文件一樣使用。它們在結(jié)構(gòu)、編碼等方面的要求也完全相同。與 YAML 不同,Python 內(nèi)置了對 JSON 的支持,因此無需安裝任何額外的模塊。

使用 JSON 變量文件時,你只需創(chuàng)建一個包含所需變量的 JSON 對象,并確保該文件具有 .json 擴展名。然后,在 Robot Framework 的命令行中指定該文件的路徑,Robot Framework 將自動加載該文件,并將 JSON 對象中的鍵值對解析為可在測試用例中使用的變量。

例如,假設(shè)你有一個名為 variables.json 的 JSON 變量文件,內(nèi)容如下:

{"USERNAME": "robot_user","PASSWORD": "secret_password","SERVER": "http://example.com"
}

你可以通過以下命令在 Robot Framework 中使用它:

robot --variablefile variables.json my_test_suite.robot

my_test_suite.robot 測試用例中,你可以直接使用 ${USERNAME}、${PASSWORD}${SERVER} 這些變量。

由于 JSON 是一種廣泛使用的數(shù)據(jù)交換格式,它非常適合用于在不同系統(tǒng)和工具之間傳遞變量。同時,由于其簡單性和明確性,JSON 文件也更容易被非開發(fā)人員閱讀和編輯。然而,如果你需要更復(fù)雜的邏輯或動態(tài)生成變量,Python 變量文件可能更加合適。

http://m.risenshineclean.com/news/59717.html

相關(guān)文章:

  • 惠州網(wǎng)站建設(shè) 翻譯6旅游搜索量環(huán)比增188%
  • 做文學(xué)網(wǎng)站用什么域名口碑營銷怎么做
  • 商丘做網(wǎng)站哪家好上海廣告推廣
  • 網(wǎng)站開發(fā)功能模塊出錯seo課培訓(xùn)
  • 哪個網(wǎng)站做醫(yī)學(xué)培訓(xùn)好seo工作內(nèi)容和薪資
  • 浙江嘉興seo網(wǎng)站優(yōu)化推廣網(wǎng)絡(luò)推廣宣傳
  • 網(wǎng)站建設(shè)價格自動點擊器怎么用
  • 廣西備案工信部網(wǎng)站營銷型網(wǎng)站內(nèi)容
  • 潮州市住房和城鄉(xiāng)建設(shè)局網(wǎng)站站長工具大全
  • b2b網(wǎng)站制作任務(wù)推廣引流平臺
  • wordpress 布局修改西安seo托管
  • 尋找網(wǎng)站建設(shè)_網(wǎng)站外包如何優(yōu)化網(wǎng)頁
  • 青島網(wǎng)站建設(shè)找潤商大連seo按天付費
  • 房地產(chǎn)行業(yè)網(wǎng)站跟我學(xué)seo從入門到精通
  • 重慶做網(wǎng)站價格百度一下首頁網(wǎng)址
  • 歐美網(wǎng)站建設(shè)排名北京網(wǎng)站seo服務(wù)
  • 如何在圖片上添加文字做網(wǎng)站網(wǎng)站備案查詢官網(wǎng)
  • 資源網(wǎng)站如何做網(wǎng)上開店如何推廣自己的網(wǎng)店
  • 公司域名注冊網(wǎng)站哪個好合肥網(wǎng)絡(luò)推廣培訓(xùn)學(xué)校
  • 養(yǎng)生館室內(nèi)設(shè)計手機網(wǎng)站seo免費軟件
  • 網(wǎng)站設(shè)計畢業(yè)論文任務(wù)書撫順優(yōu)化seo
  • 群暉ds1817做網(wǎng)站國外網(wǎng)站制作
  • 銅川公司做網(wǎng)站企業(yè)查詢系統(tǒng)官網(wǎng)
  • 南通網(wǎng)站優(yōu)化營銷渠道模式有哪些
  • 做淘寶聯(lián)盟網(wǎng)站要多少錢建設(shè)網(wǎng)頁
  • 公司營銷網(wǎng)站制作下載百度官方網(wǎng)站
  • 淫穢色情網(wǎng)站境外的南寧網(wǎng)站建設(shè)
  • 母嬰網(wǎng)站建設(shè)初衷如何免費注冊網(wǎng)站平臺
  • 2023貴陽疫情最新消息今天seo營銷名詞解釋
  • 天河區(qū)做網(wǎng)站上海搜索關(guān)鍵詞排名