【发布时间】:2019-11-18 16:23:45
【问题描述】:
我想在机器人框架的 python 库文件中进行如下所示的设置。
Class Main(foo):
def common_functions():
pass
Class Child1(Main):
def something_unique_child1():
pass
Class Child2(Main):
def something_unique_child2():
pass
但是,要使用这些类,我必须将它们导入 .robot 文件单独像这样:-
Library python_filename . Child1
Library python_filename . Child2
现在。问题是,如果我需要使用“Common_functions()”关键字,Robot 会抛出错误,指出存在 “多个关键字同名”
我猜由于两个子类都可以访问该函数,所以它会变得混乱。
如何在 RF 中实现这一功能?
附加信息: 我想要继承的原因(因为有人向我指出这不是编写库的最佳方式)是因为它下面有一个具有多种功能的特性,把它想象成一个菜单特性
(文件-->关闭,文件-->保存,文件-->另存为)
现在,这个 “保存” 功能本身有很多子功能”,因此打开应用程序并转到“文件-->保存”是一个重复的步骤,我必须再次执行并再次针对所有子功能。
我正在考虑将这个和其他一些重复步骤放在一个基类中,并简单地将函数继承到子特性上以避免代码重复。
【问题讨论】:
-
您希望您的子类从主类继承什么?这解决了什么问题?
-
@BryanOakley 我已经编辑了问题并添加了其他信息。
标签: python python-3.x automation robotframework