使用 Robot Framework 在 PyCharm 上运行测试
Posted
技术标签:
【中文标题】使用 Robot Framework 在 PyCharm 上运行测试【英文标题】:Running tests on PyCharm using Robot Framework 【发布时间】:2015-01-31 02:12:45 【问题描述】:我开始使用带有 robot
框架的 PyCharm,但我遇到了一个问题。
如何运行我的测试?每次我右键单击我的测试文件夹时,我都会从控制台日志中收到一条空测试套装消息。
有什么方法可以单独运行每个测试,比如右键单击测试用例并点击测试运行器?
这是我的代码:
*** Settings ***
Library Selenium2Library
Resource /steps/keywords.txt
*** Variables ***
$URL http://www.google.com
*** Keywords ***
Open browser with URL
[arguments] $url
Open Browser $url browser=gc
Set input on text box
[arguments] $xpath $text
Input text $xpath $text
Push button
[arguments] $button
Click Button $button
*** Test Cases ***
Google Access
Open browser with URL $URL
Set input on text box //*[@id="gbqfq"] Critical Software
Push button //*[@id="gbqfba"]
#Close Browser
【问题讨论】:
【参考方案1】:我已经为 Robot Framework 使用了Intellibot PyCharm 插件。
为了运行测试,我们可以做如下配置:
-
转到文件 > 设置 > 外部工具
点击“外部工具”面板下的“+”按钮
在“创建工具”对话框中,输入以下值:
名称:机器人
程序:[Pybot.bat 的路径,例如 C:\Python27\Scripts\Pybot.bat]
参数:$FileName$
工作目录:$FileDir$
点击确定
完成上述配置后,我们会在 IDE 的测试上下文菜单中获得“机器人”选项。选择该选项以在 PyCharm 中运行您的测试套件。
【讨论】:
如何在调试模式下运行测试? 在调试模式下运行机器人框架测试,需要使用射频调试库-pypi.python.org/pypi/robotframework-debuglibrary @Alexander.Iljushkin 请检查此链接 - robotframework.org/robotframework/latest/…【参考方案2】:最直接的方法是创建运行配置,然后使用运行命令。
这是一个示例截图 - 在菜单 Run->Run Configurations 中调用它,解释如下:
屏幕截图中的1) 是 RF run.py 文件的位置 - 它位于 python 安装中的 Lib\site-packages\robot 目录中 - 或如图所示的 virtualenv案例。
2) 是完全相同的 python 解释器 - 确保它与 1) 中使用的解释器相同(否则可能会变得混乱:)
3) 是您从命令行运行机器人时通常传递给机器人的参数。最低要求是提供必须运行的套件的路径 - 示例屏幕截图中的最后一个参数。
PyCharm 没有通过右键单击“运行此特定测试用例”的选项 - 因为 RF 依赖于在 CLI 上提供此信息(确切地说是哪种情况)。
这种案例选择可以通过多种方式完成 - 只需查看 Robotframework 的执行选择器(按标签、案例名称等)。所有这些选项都在运行配置的“脚本参数:”框中设置;例如,要运行带有 Sanity 标签的测试,请使用 --include sanity,运行特定的测试用例 - --name "My test case",等等.
顺便说一句,使用运行配置的最大好处之一是您可以调试执行 - 即使用最适合的 IDE :)
运行配置不依赖于安装的 任何 插件 - 尽管 IntelliBot 是开发 IMO 案例的“绝对必须”,从步骤中可以看出它与执行/运行无关.
【讨论】:
【参考方案3】:如何通过测试配置运行测试 1) 在“运行/调试配置”对话框(运行 -> 编辑配置...)中添加一个新的 Python 配置和下一个设置 将“脚本”设置为指向 RobotFramework 文件夹中的 run.py 文件。 将“脚本参数”设置为要执行测试的参数列表。 (这些是您传递给 pybot 命令的参数)。 将“工作目录”设置为测试项目工作目录
保存它,它将为您创建一个新配置。
2) 运行配置,您可以通过按运行按钮运行。 并在测试输出窗口中查看测试输出。
如何一键运行测试(从上下文菜单中) 您可以做的是在 Pycharm/IntellijIDEA 中设置外部工具来执行此操作。 1) 打开文件 -> 设置 (Alt+F7) 并搜索“外部工具”,单击添加以添加新配置并设置字段而不是下一个值 external tool
此处重复值:
C:\Python27\Scripts\pybot.bat
<your variables> --test "$SelectedText$" TestSuite
$ProjectFileDir$
保存更改
2) 通过突出显示测试用例名称并运行外部工具来运行测试: 右键 -> 外部工具 -> 单独测试
顺便说一句,您还可以从测试配置中调试您的测试(python 代码)。 希望对您有所帮助。
我有一个关于如何使用 Pycharm/IntellijIDEA 运行测试的 detailed blog post,请随时检查一下。
【讨论】:
【参考方案4】:对于 PyCharm 中的机器人框架集成,请确保您使用的是 IntelliBot @SeleniumLibary Patched 插件
进入文件--设置--插件--(搜索IntelliBot)
【讨论】:
以上是关于使用 Robot Framework 在 PyCharm 上运行测试的主要内容,如果未能解决你的问题,请参考以下文章
Robot Framework - 从带有参数的其他 *.robot 脚本调用 *.robot 脚本