在 PyCharm 中如何根据不同的 tag 运行 Robot Framework 的用例?

因为用的是 python3,没有装 ride (折腾半天各种坑),直接在 pycharm 中写用例,请问如何在 pycharm 中按照 tag 分类执行不同的用例?


在 PyCharm 中如何根据不同的 tag 运行 Robot Framework 的用例?
1 回复

在 PyCharm 里根据不同的 tag 运行 Robot Framework 用例,最直接的方法是用 robot 命令的 --include--exclude 参数。你可以在 PyCharm 的运行配置里设置。

具体操作如下:

  1. 打开 Run/Debug Configurations(运行/调试配置)。
  2. 点击 + 号,选择 Python
  3. Script path 里,找到你安装的 robot 可执行文件路径(例如 venv/Scripts/robotpython -m robot)。
  4. Parameters 里,输入你的 tag 过滤命令和目标测试套件或文件。

代码示例(运行配置参数):

假设你的项目结构如下:

my_project/
├── tests/
│   ├── login_tests.robot
│   └── order_tests.robot
└── venv/

场景一:运行包含 smoke 标签的所有用例Parameters 框中输入:

--include smoke tests/

这会在 tests/ 目录下递归查找所有带有 smoke 标签的用例并执行。

场景二:运行不包含 slow 标签的用例Parameters 框中输入:

--exclude slow tests/

场景三:运行同时满足多个标签的用例(AND 逻辑) Robot Framework 原生不支持直接的 AND 逻辑,但可以通过多次 --include 实现近似效果,或者使用更复杂的标签表达式(需要 Robot Framework 3.2+)。最简单的方法是:

--include tag1ANDtag2 tests/

注意这里的 AND 是关键字。或者,如果你想运行带有 tag1tag2 的用例(OR 逻辑),用空格分隔:

--include tag1 --include tag2 tests/

或者直接用:

--include tag1ORtag2 tests/

场景四:使用 python -m robot 的方式(推荐) 如果你使用虚拟环境,有时直接指定 robot 脚本路径可能因为环境问题找不到库。更稳定的方法是将 Script path 设置为你的 Python 解释器路径(例如 venv/Scripts/python),然后在 Parameters 中输入:

-m robot --include smoke tests/

创建多个配置: 你可以为不同的 tag 组合创建多个运行配置,方便快速切换。比如:

  • SmokeTests: --include smoke tests/
  • RegressionTests: --include regression tests/
  • FastTests: --exclude slow tests/

总结:在运行配置的 Parameters 里用 --include--exclude 加标签名。

这样你就可以在 PyCharm 里轻松地按 tag 筛选运行 Robot Framework 测试了。

回到顶部