#coding:utf-8
import unittest
import os
class CompareTestCase(unittest.TestCase):
'''对比测试结果与预期结果是否一致'''
def compare_data(self,case_name,actual_list,actural_data,case_dir):
'''数据校验方法'''
with open(case_dir+"\\"+case_name,encoding='utf-8') as f:
content = f.read()
list = eval(content)
for i in range(len(list)):
for key in list[i].keys():
if list[i][key]!= actual_list[i][key]:
print("预期结果:%s" % list[i] + ",\n实际结果:%s" % actual_list[i] + ",\n验证结果:失败!")
test_result = list[i][key]!= actual_list[i][key]
self.assertFalse(test_result)
else:
pass
print(actural_data)
def compare_phenology(self,phenology_data_dirc):
'''获取用例的路径'''
data_dirc=os.path.dirname(os.path.realpath(__file__)) #读取用例
phenology_data_dirc = phenology_data_dirc
case_dir = data_dirc + "\\test_data\\phenology\\" + phenology_data_dirc
return case_dir
def compare_for_maturity(self,case_name,actual_result,phenology_data_dirc):
'''熟性单独调用接口,数据校验接口'''
#从文件中读取json数据
data_dirc=os.path.dirname(os.path.realpath(__file__))
phenology_data_dirc = phenology_data_dirc
case_dir = data_dirc + "\\test_data\\phenology\\" + phenology_data_dirc
with open(case_dir+"\\"+case_name,encoding='utf-8') as f:
content = f.read()
except_list1 = list(eval(content).values())
actual_list1 = list(actual_result.values())
for i in range(len(except_list1)):
result = except_list1[i]!= actual_list1[i]
if result:
print("预期结果:%s" % except_list1 + ",\n实际结果:%s" % actual_list1 + ",\n验证结果:失败!")
self.assertFalse(result)