#!/usr/bin/env python # -*- coding: utf-8 -*- import unittest import requests from data_fixture.config_data import HOST_BOSS from data_fixture import create_testdata as CreateTestData from data_fixture import config_data as Data from data_fixture.mysql_db import DB db_test = DB() # 获取教材版本列表 class GetPressList(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/press/list' def tearDown(self): print(self.result) def test_getPressList_success(self): headers = {'Accept': '*/*'} getData = {'subjectName': '数学'} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() self.assertEqual(self.result['status'], 1, 'getPressList Error') self.assertTrue(len(self.result['data']) > 1, 'getPressList data Error') # 获取用户版本信息接口 class GetUserPressInfo(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/userPress/info' CreateTestData.pre_GetUserPressInfo(Data.USER_ID) def tearDown(self): print(self.result) def test_getPressList_success(self): headers = {'Accept': '*/*'} getData = {'userId': Data.USER_ID, 'gradeId': 9} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() self.assertEqual(self.result['status'], 1, 'GetUserPressInfo Error') data = self.result['data'] for item in data: if item['subject'] == '语文': press_to_check = item['press'] self.assertEqual(press_to_check, '北京师范大学出版社', 'GetUserPressInfo data Error') # 修改版本信息接口 class UpdateUserPressInfo(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/userPress/update' def tearDown(self): print(self.result) def test_getPressList_success(self): headers = {'Accept': '*/*', 'Content-Type': 'application/x-www-form-urlencoded'} postData = {'userId': Data.USER_ID, 'chemistry': '山东教育出版社', 'chinese': '江苏教育出版社', 'biology': '人民教育出版社', 'geography': '人民教育出版社', 'physics': '人民教育出版社', 'english': '外语教学与研究出版社', 'political': '人民教育出版社', 'math': '江苏科学技术出版社', 'history': '人民教育出版社' } r = requests.post(self.base_url, headers=headers, data=postData) self.result = r.json() self.assertEqual(self.result['status'], 1, 'UpdateUserPressInfo Error') where = {'user_id': Data.USER_ID, 'chemistry': '山东教育出版社', 'chinese': '江苏教育出版社', 'biology': '人民教育出版社', 'geography': '人民教育出版社', 'physics': '人民教育出版社', 'english': '外语教学与研究出版社', 'political': '人民教育出版社', 'math': '江苏科学技术出版社', 'history': '人民教育出版社' } self.assertEqual(db_test.select_('acornuser.user_press', where), 1, 'UpdateUserPressInfo data Error')