html tool

2019年6月5日星期三

unittest中的测试数据遇到的问题




unittest中的测试数据遇到的问题
  • *_test.py中的testdata有更好的方式设置吗?
    问题:
    当前使用类变量,在每个test_*()中使用,有小变化直接方法内部修改了,但就有如下问题:
     47     def test_check_autocc_alert_in_es(self):                                                                                   
     48         """ test check_autocc_alert_in_es"""                                                                                   
     49         t = autocc_check()                                                                                                     
     50         t.set_ssh(self.dic_test)                                                                                               
     51         pacp_name = "Teamviewer-Win10toWin7.pcap_10.10.51.2"                                                                   
     52         interface = "tap1"                                                                                                     
     53         autocc_check_dic = {"check_type": "autocc" , "check_main_tag":"Teamviewer" }                                           
     54         tcpreplay_para = " -M 1 -l 10 "                                                                                        
     55         t.get_autocc_pacp_ssh(pacp_name, interface, tcpreplay_para)                                                            
     56         print("~~~~~~~~start ssh get es result ---------------")                                                               
     57         print self.dic_test                                                                                                    
     58         self.dic_test["tdp_ip"] = "192.168.100.174"                                                                            
     59         t.set_ssh(self.dic_test, change_sshpass=0)                                                                             
     60         self.dic_test["tdp_ip"] = "127.0.0.1"                                                                                  
     61         #[popexizhi:这种用法太危险了,全部执行unittest时影响测用例后面的测试啊,死都不知道是如何死的,testdata是否有更好的方式呢?]
     62         print t.ssh_ip                                                                                                         
     63         res = t.check_autocc_alert_in_es(autocc_check_dic, "10.10.51.2")                                                       
     64         print res                                                                                                              
     65                                                                                                                                
     66 if __name__ == "__main__":  
    
    

    python *_test.py时,这个test_check_autocc_alert_in_es 执行pass了,但是之后的case就死活过不去,但单独
    python *_test.py Test*.test_* 每个方法就可以运行通过,
    最后发现是上面这个变量修改影响其他方法的使用了,好吧,现在想不出更好的解决,只是用完恢复一下,但是还有更好的,这也太不是自己想要的了。


没有评论:

发表评论