最近搗鼓接口自動(dòng)化測試過程,遇到好些問題,其中在對測試數(shù)據(jù)進(jìn)行參數(shù)化時(shí),執(zhí)行后總是提示:
TypeError: get_data() missing 1 required positional argument: 'self'
附上代碼:


調(diào)試了一上午,找不到原因,后來,各種百度,分析,終于....有點(diǎn)眉目,往下看
解決辦法:把get_data()函數(shù)放到class TestApiLogin外面,問題得以解決

因?yàn)槿绻旁赾lass內(nèi)部,下面調(diào)用函數(shù)是需要實(shí)例化傳參的,
究其原因,是對python中的self原理和用法不夠熟悉,似是而非,個(gè)人總結(jié),self相當(dāng)于實(shí)例化對象本身,對于類中的方法,在一開始給定self,如果非要不寫self,那就是在沒有定義也沒有調(diào)用的情況下,可以不寫self,以上純屬個(gè)人體會(huì),如有不當(dāng),歡迎指正~~~
這里推薦一篇文章,關(guān)于self用法詳解,筆者認(rèn)為寫的比較詳細(xì):
https://blog.csdn.net/CLHugh/article/details/75000104