2017-03-19 33 views
0

我见过如何使用self在另一个类中调用函数的示例。但问题是我使用BDD的功能文件没有类定义。如何从功能文件中的单独类调用函数?

如果这是另一种语言,我将能够使用New运算符调用它并使用它的方法。

我不确定如何使用Python来做到这一点。

类:

class Test: 
    def __init__(self, test): 
     self.test= Test('fdfdf') 

    def tested(self, testa, testb): 
     return self.test(testa,testb) 

如果我想要一个功能文件,我怎么会叫上面的.feature只包含的步骤,如@given等测试方法中使用呢?

编辑:

目前我的项目结构是这样的:

├── project 
│  ├── steps 
│   ├── classes.py 
│   
└── .feature files 

没有初始化 .py文件。我想我需要创建一个init .py文件并指定从该特性文件导入到该类的路径?

所以我需要了解如何在类中没有类定义的情况下实例化另一个类,例如,如果查看addressbook.py类,我将如何实例化另一个类? kb.froglogic.com/display/KB/...

+0

我有一个很难理解它是什么你究竟要怎样做。我经常做BDD测试,我只是不确定我是否明白你的困难所在。你能否显示你的步骤函数的样本,并在你的代码中解释什么是不工作? – idjaw

+0

@idjaw谢谢你的回答,所有我想要做的是在一个步骤内,例如给定我想要使用上面称为测试的方法。这将成为所有功能文件将使用的中间层类。我只是不确定如何创建类的对象测试和使用功能文件中的测试方法,你明白吗? – Sam

+0

这就是我不了解调用'测试'方法的困难。你只需通过调用'Test'作为'Test()'来在Python中实例化一个类。所以,'test_obj = Test()',然后'test_obj.tested(arg1,arg2)'。除此之外,我很难理解你想要完成什么。 – idjaw

回答

1

舞动采用进口方式略有不同,所以我做:

from steps.test import Test 

test = Test() 
相关问题