【发布时间】:2021-06-12 18:16:33
【问题描述】:
我正在使用 Squish for Qt 创建一个 Python 关键字库,用于使用 Robot Framework 运行自定义 Qt 应用程序 GUI 测试。目前我在 Python 3.8.7(和 Squish 6.6.2)上运行 Robot Framework 3.2.2,我在将参数从 Robot 传递到 Python 时遇到了问题。
在名为 ClientKeywords.py 的 Python 文件中,我有以下内容
class ClientKeywords:
def start_client(launchMode):
if launchMode = "":
#Launch Client in default mode
elif launchMode = "logger":
#Launch Client with logging
在机器人文件中,我使用的关键字就像
Library ClientKeywords
*** Test Cases ***
Smoke Test
[Documentation] This is a smoke test
Start Client logger
运行测试时出现错误
关键字“ClientKeywords.Start Client”预期 0 个参数,得到 1 个。
该问题还表现出来,因此在对关键字文件运行 libdoc 工具时,一些关键字参数根本不显示。我还没有真正想出一个模式,因为有些论点正在显示而有些则没有。例如:
drag_line_measurement(startY, dX, dY):
#Do stuff
click_on(intX, intY):
#Click stuff
显示在生成的文档中,如下所示
| Keyword | Arguments |
|---|---|
| Drag Line Measurement | startY, dX, dY |
| Click On | intY |
我使用类结构的方式似乎存在一些问题,因为当类定义被删除时,库大部分工作正常,但在这种情况下这不是一个可行的长期解决方案 - 特别是当libdoc 只记录导入的 Squish python 库,而不是没有定义类的实际库文件。
【问题讨论】:
标签: python robotframework squish