2017-03-20 85 views
0

我已經編寫了類似於以下代碼的代碼來實現我的要求,但我收到了錯誤消息。如何從unittest框架中的另一個測試調用測試方法?

class Test(BaseSetup): 

    def test_01_create_record(self):   
     -- 
    def test_02_edit_record(self): 
     -- 
    def test_03_delete_record(self): 
     -- 
    def test_04_verify_item_tab(self): 
     testObj=Test() 
     testObj.test_01_create_record() 
     do this.... 
     testObj.test_03_delete_record()   

if __name__ == '__main__':  
    unittest.main() 

這裏,所有上述三種測試方法(test_01,test_02和test_03)運行良好,但最後的測試,即test_04失敗。它無法使用test_01創建記錄(儘管它單獨運行良好)。我收到了最後一次測試的錯誤消息。

self.driver.find_element_by_xpath(self.content_tab_xpath).click() 
AttributeError: 'NoneType' object has no attribute 'find_element_by_xpath' 

上述錯誤消息是用於第一測試(test_01_create_record),我得到只有當我從另一個調用測試第一測試方法,但是當我單獨運行它它工作得很好。任何想法我可能會失蹤?非常感謝

+3

你爲什麼要創建自己的方法內部類的新實例?你覺得'自我'*是*? – jonrsharpe

+0

哦,這很好,我只需要調用self.test_01_create_record()。無需在此創建類的實例。非常感謝 –

回答

0

無需創建類的實例裏面,只是參考實例與self

def test_04_verify_item_tab(self): 
    self.test_01_create_record() 
    self.test_03_delete_record() 
相關問題