在 PyCharm 中如何根据不同的 tag 运行 Robot Framework 的用例?
因为用的是 python3,没有装 ride (折腾半天各种坑),直接在 pycharm 中写用例,请问如何在 pycharm 中按照 tag 分类执行不同的用例?
在 PyCharm 中如何根据不同的 tag 运行 Robot Framework 的用例?
在 PyCharm 里根据不同的 tag 运行 Robot Framework 用例,最直接的方法是用 robot 命令的 --include 或 --exclude 参数。你可以在 PyCharm 的运行配置里设置。
具体操作如下:
- 打开
Run/Debug Configurations(运行/调试配置)。 - 点击
+号,选择Python。 - 在
Script path里,找到你安装的robot可执行文件路径(例如venv/Scripts/robot或python -m robot)。 - 在
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 是关键字。或者,如果你想运行带有 tag1 或 tag2 的用例(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 测试了。

