def test_01(self): "推送正式项目数据" data = qualityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] self.sourceId_update = sourceId data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(self.ProjectSysNo, elkLog['projectSysNo']) mongoLog = self.mongo.getbySourceId(sourceId, "quality_check") if 'checkUserList' in mongoLog: del mongoLog['checkUserList'] if 'partitioningList' in mongoLog: del mongoLog['partitioningList'] self.assertEqual(0, res.json()['code'], "Send OpenAPI Fail") Mongo_ELK_Match, Mongo_ReqData_Match, ELK_ReqData_Match = Check.dataCheck( mongores=mongoLog, elkres=elkLog, reqdata=json.loads(data)) self.assertTrue(Mongo_ELK_Match, "Mongo_ELK check Fail") self.assertTrue(Mongo_ReqData_Match, "Mongo_ReqData check Fail") self.assertTrue(ELK_ReqData_Match, "ELK_ReqData check Fail") self.assertEqual(0, res.json()['code'])
def test_SoftWare_smoke(): """软件冒烟""" # mongo = pyMongodb.pymongo() sourceID = str(uuid.uuid4()) deviceTime = datetime.now().strftime("%Y-%m-%d %H:%M:%S") data = """ { "sourceId": "874d33ec-190e-4814-b65b-0b4694c494dd", "actualStartTime": "2017-12-14 00:00:00", "planStartTime": "2017-12-14 00:00:00", "parentSourceId": "874d33ec-190e-4814-b65b-0b4694c494dd", "sortIndex": 20, "completionRate": 0, "type": 1, "type1": 1, "projectSysNo": 10218, "partitioningName": "AutoTest-partitioningName2018-07-26 20:26:45", "name": "AutoTestName2018-07-26 20:26:45", "partitioningId": "874d33ec-190e-4814-b65b-0b4694c494dd", "actualEndTime": "2018-05-26 00:00:00", "planEndTime": "2018-05-25 00:00:00", "status": 1 } """ # data = json.dumps(data) # print(sourceID) res = OpenAPI(method='upload.processTaskData', data=data) # print(json.dumps(res.json(), indent=2, ensure_ascii=False)) time.sleep(3.5) elkLog = elkSearch.elkSoftware(sourceID) # print(json.dumps(elkLog)) """
def test_16(self): "推送正式项目数据- 根据sourceId更新软件数据" pdata = securityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = pdata['sourceId'] pdata = json.dumps(pdata) pres = OpenAPI(method=self.method, data=pdata) self.assertEqual(0, pres.json()['code'], "Send OpenAPI Fail") data = json.loads(pdata) fake = Faker("zh_CN") # data = securityCheck.JSONV2_Request(self.ProjectSysNo) # 转换UTC时间为本地时间 for k, v in data.items(): if isinstance(k, datetime): data[k] = data[k].replace( tzinfo=pytz.utc).astimezone(local_timezone) data['rectifyDate'] = datetime.now().strftime("%Y-%m-%d %H:%M:%S") data['reviewUserName'] = fake.name() data = json.dumps(data) res = OpenAPI(method=self.method, data=data) self.assertEqual(0, res.json()['code']) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(1, elkLog['uploadStatus'])
def test_18(self): "推送正式项目数据- 根据sourceId更新软件数据" pdata = process_task.JSONV2_Request(self.ProjectSysNo) sourceId = pdata['sourceId'] pdata = json.dumps(pdata) pres = OpenAPI(method=self.method, data=pdata) self.assertEqual(0, pres.json()['code'], "Send OpenAPI Fail") fake = Faker('zh_CN') data = json.loads(pdata) # 转换UTC时间为本地时间 for k, v in data.items(): if isinstance(k, datetime): data[k] = data[k].replace( tzinfo=pytz.utc).astimezone(local_timezone) data['completionRate'] = data['completionRate'] + 1 data['actualEndTime'] = datetime.now().strftime("%Y-%m-%d %H:%M:%S") data['partitioningName'] = fake.text(max(range(10, 500))) data = json.dumps(data) res = OpenAPI(method=self.method, data=data) self.assertEqual(0, res.json()['code'], "Send OpenAPI Fail") elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(1, elkLog['uploadStatus'], elkLog)
def test_01(self): "推送正式项目数据" data = process_task.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) self.assertEqual(0, res.json()['code'], "Send OpenAPI Fail") elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(1, elkLog['uploadStatus']) self.assertEqual(self.ProjectSysNo, elkLog['projectSysNo']) mongoLog = self.mongo.getbySourceId(sourceId, "process_task") if "partitioningList" in mongoLog: del mongoLog['partitioningList'] if "submitUserList" in mongoLog: del mongoLog['submitUserList'] if "responsibleUserList" in mongoLog: del mongoLog['responsibleUserList'] Mongo_ELK_Match, Mongo_ReqData_Match, ELK_ReqData_Match = Check.dataCheck( mongores=mongoLog, elkres=elkLog, reqdata=json.loads(data)) self.assertTrue(Mongo_ELK_Match, "Mongo_ELK check Fail") self.assertTrue(Mongo_ReqData_Match, "Mongo_ReqData check Fail") self.assertTrue(ELK_ReqData_Match, "ELK_ReqData check Fail") self.assertEqual(0, res.json()['code'])
def test_02(self): "推送测试项目数据" data = securityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(self.ProjectSysNo, elkLog['projectSysNo']) self.assertEqual(0, res.json()['code'])
def test_21(self): "推送正式项目数据- 项目未添加应用" data = securityCheck.JSONV2_Request(10) sourceId = data['sourceId'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(0, res.json()['code']) self.assertEqual("不能使用该项目", elkLog['exceptionContent'])
def test_06(self): "推送正式项目数据- 无checkUserId" data = securityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] del data['checkUserId'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(0, res.json()['code']) self.assertEqual("checkUserId字段不能为空", elkLog['exceptionContent'])
def test_10(self): "推送正式项目数据- 字段类型不一致 datetime->string" data = securityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] data['checkDate'] = 'actualStartTime' data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(0, res.json()['code']) self.assertEqual("checkDate字段类型不正确", elkLog['exceptionContent'])
def test_18(self): "推送正式项目数据- 无partitioningName" data = qualityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] del data['partitioningName'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(0, res.json()['code']) self.assertEqual("partitioningName字段不能为空", elkLog['exceptionContent'])
def test_22(self): """推送正式设备数据-json 格式不正确""" data = securityCheck.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] data = json.dumps(data) data = data[:-1] res = OpenAPI(method=self.method, data=data) self.assertEqual(0, res.json()['code']) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual("json格式不正确", elkLog['exceptionContent'], elkLog) self.assertEqual(2, elkLog['uploadStatus'])
def test_05(self): "推送正式项目数据- 无name" data = process_task.JSONV2_Request(self.ProjectSysNo) sourceId = data['sourceId'] del data['name'] data = json.dumps(data) res = OpenAPI(method=self.method, data=data) elkLog = elkSearch.elkSoftware(sourceId, self.method) self.assertEqual(0, res.json()['code']) self.assertEqual(2, elkLog['uploadStatus'], elkLog) self.assertEqual("name字段不能为空", elkLog['exceptionContent'], sourceId)
def test_SoftWare_smoke(self): """软件冒烟""" mongo = pyMongodb.pymongo('172.16.0.137', 20200) sourceID = str(uuid.uuid4()) deviceTime = datetime.now().strftime("%Y-%m-%d %H:%M:%S") data = { "sourceId": sourceID, "actualStartTime": deviceTime, "planStartTime": "2017-12-14 00:00:00", "parentSourceId": str(uuid.uuid4()), "sortIndex": 20, "completionRate": 0, "type": 1, "type1": 1, "projectSysNo": 10218, "partitioningName": "AutoTest-partitioningName2018-07-26 20:26:45", "name": "AutoTestName2018-07-26 20:26:45", "partitioningId": str(uuid.uuid4()), "actualEndTime": "2018-05-26 00:00:00", "planEndTime": "2018-05-25 00:00:00", "status": 1 } data = json.dumps(data) # print(sourceID) res = OpenAPI(method='upload.processTaskData', data=data) # print(json.dumps(res.json(), indent=2, ensure_ascii=False)) time.sleep(3.5) elkLog = elkSearch.elkSoftware(sourceID) # print(elkLog) time.sleep(1.5) mongoLog = mongo.getbySourceId(sourceID, "process_task") # print(mongoLog) # print(json.dumps(json.loads(data), indent=2, ensure_ascii=False)) self.assertEqual(0, res.json()['code'], "Send OpenAPI Fail") Mongo_ELK_Match, Mongo_ReqData_Match, ELK_ReqData_Match = Check.dataCheck( mongores=mongoLog, elkres=elkLog, reqdata=json.loads(data)) print(Mongo_ELK_Match, Mongo_ReqData_Match) self.assertTrue(Mongo_ELK_Match, "Mongo_ELK check Fail") self.assertTrue(Mongo_ReqData_Match, "Mongo_ReqData check Fail") self.assertTrue(ELK_ReqData_Match, "ELK_ReqData check Fail")