gpt4 book ai didi

json - 如何仅读取一次 JSON 并在 Robot Framework 中的同一个机器人文件中多次使用它

转载 作者:行者123 更新时间:2023-12-04 07:46:52 24 4
gpt4 key购买 nike

我正在使用机器人框架实现测试自动化框架。但是我无法管理一些 JSON 东西。我有一个充满关键字的机器人文件(没有测试),我试图在测试设置部分读取 json 文件(充满 xpath),但它失败了。
是否可以读取机器人文件开头的文件并将该对象用于该列表中的每个关键字?
当前结构:

keyword 1
read json
do sth

keyword 2
read json
do sth

keyword 3
read json
do sth
我想要的是?
read json

keyword 1
do sth
keyword 2
do sth
keyword 3
do sth
当前实现:
*** Settings ***
Library SeleniumLibrary
Library JSONLibrary
Library OperatingSystem
Resource ../PageObjects/LoginPage.robot


Suite Setup Read object repository locators
*** Keywords ***

Read object repository locators
[Documentation] For all elements on website, this keyword is returns an
xpath collection for other keywords
# read the json data
${json}= Get file ../library/ObjectRepository.json
# convert the data to a object
${object}= Evaluate json.loads(r'''${json}''')
set suite variable ${object}

Read object
${password}= Set Variable ${object["registerInfo"][0]["password"]}

最佳答案

Is it possible to read the file at the beginning of a robot file and use that object for every keyword in that list?


是的。您可以读取数据,然后使用 Set suite variable创建一个在套件中随处可用的变量。
以下示例定义了一个可以在套件设置中运行的关键字。它将读取一个 json 文件(存储在机器人变量 ${data_file} 中)并将数据保存到名为 ${data} 的套件变量中。 .然后您可以使用 ${data}在套件中的任何测试中。
*** Settings ***
Suite Setup Load JSON data

*** Keywords***
Load JSON data
${data}= evaluate json.load(open($data_file, 'r'))
set suite variable ${data}

关于json - 如何仅读取一次 JSON 并在 Robot Framework 中的同一个机器人文件中多次使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67168628/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com