我有包含多个测试用例的测试套件,为了避免测试套件的执行暂停,我想为每个测试用例添加测试超时。如何做到这一点,请帮助。
所以我的问题可能具有句法性质,也许不是,但我对如何继续下一步毫无头绪.我正在编写一个关于Robot Framework的测试用例,我的最终目标是能够在循环中连续运行多个测试.
在下面的这种情况下,Log to Console调用工作正常,并输出作为参数传递的不同值.下一个调用"查询数据库和分析数据"也可以工作.
*** Test Cases ***
| For-Loop-Elements
| | @{Items} = | Create List | ${120} | ${240} | ${240}
| | :FOR | ${ELEMENT} | IN | @{ITEMS}
| | | Log To Console | Running tests at Voltage: ${ELEMENT}
| | | Query Database And Analyse Data
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试使用"查询数据库和分析数据"制作带有文档和标签的测试用例时,我得到错误:关键字名称不能为空,这使我认为当文件到达[文档标签]时,它不明白它是测试用例的一部分.这通常是我编写测试用例的方式.
请注意,缩进尝试匹配循环内部
*** Test Cases ***
| For-Loop-Elements
| | @{Items} = | Create List | ${120} | ${240} | ${240}
| | :FOR | ${ELEMENT} | …Run Code Online (Sandbox Code Playgroud) 我想使用Chrome进行Robot Framework的自动化测试。这是我的设置:
*User variables:*
name: webdriver.chrome.driver
value: C:\chromedriver_win32\chromedriver.exe
name: PATH
values: ......;C:\chromedriver_win32\chromedriver.exe
Run Code Online (Sandbox Code Playgroud)
我的代码:
*** Settings ***
Library BuiltIn
Library Selenium2Library
Library SikuliLibrary
Library OperatingSystem
*** Variables ***
${HOST} = VM
${URL} = http://VM.com
${BROWSER} = Chrome
*** Test Cases ***
Begin Web Test
Open Browser ${URL} ${BROWSER}
maximize browser window
Run Code Online (Sandbox Code Playgroud)
执行命令后:pybot test.robot:
==============================================================================
[ WARN ] Keyword 'Capture Page Screenshot' could not be run on failure: No brows
er is open
Test Case FException
AttributeError: "'Service' object has no attribute …Run Code Online (Sandbox Code Playgroud) 我有下面的for循环,我试图给它一个条件:
: FOR ${i} IN RANGE ${size}
\ Validate Item List ${items[${i}]}
Run Code Online (Sandbox Code Playgroud)
这样只有在满足条件时才运行for.我尝试过"运行关键字if",但这似乎不起作用:
Run keyword if ${flag}>0 : FOR ${i} IN RANGE ${size}
... \ Validate Item List ${items[${i}]}
Run Code Online (Sandbox Code Playgroud)
我得到"没有名字的关键字':FOR'找到了.".
注意:flag可以是零或负数.
如何使用Page.setDownloadBehavior在Chrome浏览器开发工具来传递,这样我可以用下面的代码设置为无头镀铬的下载行为?
Create Chrome Browser
[Arguments] ${link_to_open}
${chrome_options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
${prefs}= Create Dictionary download.default_directory=${DOWNLOADS_DIR}
Call Method ${chrome options} add_argument headless
Call Method ${chrome options} add_argument disable-gpu
Selenium2Library.Go To ${link_to_open}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Robot Framework中的AppiumLibrary自动化Mobile应用程序。有人可以帮助我如何开始在机器人框架中安装Appium库吗?
我想找到Robotframework中安装的库.也许喜欢pip命令或类似的东西.你知道这样做的方法吗?我已经检查了文档,但找不到这个.非常感谢 !
我试图通过其在iframe内的id获取'Form'元素的xpath.
在我查询时在chrome xpath插件中
// iframe中[含有(@ ID, 'fraModalPopup')]
它让我得到iframe,但当我尝试在层次结构中得到任何东西时,它只返回null.例如,如果我尝试做
// iframe [contains(@ id,'fraModalPopup')]/html //返回null
要么
// iframe [contains(@ id,'fraModalPopup')]/form [contains(@ id ='aspnetForm')] //不确定它是否是正确的xpath语句 - 也返回null
请任何人指导我如何抓住表单元素?我必须在RIDE(Robot Framework)中使用这个xpath.
这是一个例子,我有24个元素与这个CSS选择器".main-column> div> ul> li> a",我想检查这个标签的所有链接和文本.
基本上我试图做Loop循环但我不知道如何使用Robot Framework.
${all_elements} css=.main-column>div>ul>li>a
Run Code Online (Sandbox Code Playgroud)
我试过了
: FOR ${a} IN RANGE ${all_element}
\ Get Text ${all_element}
Run Code Online (Sandbox Code Playgroud)
请告诉我如何做,或更好的方法.是否可以将$ {all_element}转换为数组.所以我们可以循环它,并尝试获取所有链接和文本?请指教
实际上我想要一个随机的数字和我使用的Integer值的浮点值
${Impressions_Int}= Evaluate random.randint(0,19999)
Log ${Impressions_Int}
Run Code Online (Sandbox Code Playgroud)
我不知道我们应该为随机浮点值使用什么