需要你的洞察力:
在我自己的测试设置(init_setup)中,我需要调用已经在类test_Create_Tmp()中定义的另一个测试。问题是,这个类有一个fixture(init_api),它返回函数api数组
在init_设置中:在inv.test_post_inv_data()行,我得到的“method”对象是不可下标的,因为它通过以下方式调用对象的api:init_api[“nAPI”].postJsonData(…)
如果不允许我从该类中删除fixture init_api(),我如何使其工作? 我知道我可以让它工作,通过完成get-rid fixture init_api,将其代码移动到test_post_inv_data()中
我自己的设置:
@pytest.fixture(scope="class")
def init_setup(self, read_data):
#import Test_Create_Tmp class here
inv = Test_Create_Tmp()
inv.test_post_inv_data(read_data, inv.init_api)
# this class is defined in another file
class Test_Create_Tmp():
@pytest.fixture
def init_api(self, client):
self.nAPI = NAPI(client) #NAPI is a class
self.sAPI = SApi(client) #SApi is another class
return {"nAPI": self.nAPI, "sAPI": self.sAPI}
def test_post_inv_data(self, read_data, init_api):
...
init_api["nAPI"].postJsonData(json.dumps(data))
我明白了。只需创建所需的对象(即nAPI、sAPI)即可调用调用:
inv=测试\创建\ Tmp()
init_api={
}
库存测试后库存数据(读取数据,初始化api)
相关问题 更多 >
编程相关推荐