Пример #1
0
class Feed(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
        self.header = {
            'User-Agent':
            'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '2',
            'requestclient': '2',
            'versionForApp': '4.1.1',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_collect01(self):
        u'测试收藏接口'
        #读取关联参数-用户的动态的id,再循环去收藏,断言结果
        self.log.info('开始测试收藏动态接口!')
        url = get_content('sns_base_url') + '/v1/collect/add'
        read_feed_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_feed_ids)
        #print(type(feed_ids))
        #迭代字典的value
        for x in feed_ids.values():
            json_data = {"id": x, "token": self.auto_login_token}
            r = self.s.post(url, headers=self.header, json=json_data)
            self.log.info('返回的内容是:%s' % r.json())
            self.assertEqual(200, r.json()['code'])
            self.assertEqual('收藏成功.', r.json()['note'])

        self.log.info('收藏动态接口测试结束!\n')

    def test_collect02(self):
        u'测试取消收藏接口'
        self.log.info('开始测试取消收藏动态接口!')
        url = get_content('sns_base_url') + '/v1/collect/delete'
        read_feed_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_feed_ids)
        #print(type(feed_ids))
        #迭代字典的value
        for x in feed_ids.values():
            json_data = {"id": x, "token": self.auto_login_token}
            r = self.s.post(url, headers=self.header, json=json_data)
            self.log.info('取消收藏返回的内容是:%s' % r.json())
            self.assertEqual(200, r.json()['code'])
            self.assertEqual('取消收藏成功.', r.json()['note'])

        self.log.info('取消收藏动态接口测试结束!\n')

    def tearDown(self):
        self.s.close()
Пример #2
0
class ColumnList(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.login()
        self.header = {
            'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.EXCEL = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')
        self.log = Log()

    def test_ColumnList(self):
        u'测试专栏列表接口'
        self.log.info('开始测试专栏列表接口....')
        url = 'http://api.lesson.sunnycare.cc/v1/spe/list'
        json_data = {
            "timestamp": str(int(time.time())),
            "token": self.uid_token,
            "time": "0"
        }
        #加入nonce参数
        json_data['nonce'] = get_digit()
        json_data['sign'] = get_sign(json_data)
        print(json_data)

        r = self.s.post(url, headers=self.header, json=json_data, verify=False)
        self.EXCEL.write_value(4, 5, r.json())
        print(r.json())

        self.assertEqual('请求成功.', r.json()['note'])
        data = r.json()['data']
        content = data['list']  #专栏列表的内容
        self.assertTrue(len(content) >= 1, msg='专栏列表为空,肯定有问题!')

        spe_codes = {}
        n = 1
        for i in r.json()['data']['list']:
            spe_codes['spe_code' + str(n)] = i['spe_code']
            n += 1
        self.EXCEL.write_value(4, 6, (spe_codes))
        self.log.info('专栏列表接口测试结束!!')

    def tearDown(self):
        self.s.close()
Пример #3
0
class TestInvoice(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.login()  #登录
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')
        self.header = {
            'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '1.3',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }

    def test_invoice(self):
        u'测试我的发票获取接口'
        url = 'http://api.exam.sunnycare.cc/v1/myInvoices'

        json_data2 = {"token": self.uid_token}  #请求的参数上一接口返回的token
        print(json_data2)
        r = self.s.post(url, headers=self.header, json=json_data2)
        self.excel.write_value(6, 5, r.json())
        self.assertEqual('请求成功.', r.json()['note'], msg='请求我的发票接口没有成功')
        list1 = r.json()['data']['list']
        global d
        d = {}
        x = 1
        for i in list1:
            d['code' + str(x)] = i['code']
            x += 1
        self.excel.write_value(6, 6, d)

    def test_invoice_detail(self):
        u'测试查看发票详情接口'
        url = 'http://api.exam.sunnycare.cc/v1/myInvoiceDetail'

        #for循环一次去请求每张发票详情
        for value in d.values():
            print('value', value)
            json_data = {"token": self.uid_token, "inv_code": value}
            r = self.s.post(url, headers=self.header, json=json_data)
            print(r.json())
            self.assertEqual('请求成功.', r.json()['note'], msg='发票详情获取失败!')

    def tearDown(self):
        self.s.close()
Пример #4
0
 def setUp(self):
     self.s = requests.session()
     self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
     self.header = {'User-Agent': 'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
                    'Accept-Encoding': 'gzip, deflate',
                    'Accept-Language': 'zh-Hans-CN;q=1',
                    'Content-Type': 'application/json',
                    'requestApp': '2',
                    'requestclient': '2',
                    'versionForApp': '4.1.1',
                    'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                    'Connection': 'keep-alive'
                    }
     self.log = Log()
     self.excel = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')
Пример #5
0
 def setUp(self):
     self.s = requests.session()
     self.lgin = LG(self.s) #实例化登录类
     self.uid_token = self.lgin.login() #直接取第二部登录
     self.header = {'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
                    'Accept-Encoding': 'gzip, deflate',
                    'Accept-Language': 'zh-Hans-CN;q=1',
                    'Content-Type': 'application/json',
                    'requestApp': '3',
                    'requestclient': '2',
                    'versionForApp': '2.0',
                    'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                    'Connection': 'keep-alive'}
     self.log = Log()#实例化日志的类
     self.excel = Excel_util(r'C:\Users\Administrator\Desktop\interface_testcase.xls')
Пример #6
0
class ColumnInfo(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.login()  #登录澜渟医生测试环境
        self.header = {
            'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.EXCEL = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def testColumnInfo(self):
        u'测试专栏信息接口'
        url = 'http://api.lesson.sunnycare.cc/v1/spe'
        #将所有专栏的code放进list
        column_list = json.loads(self.EXCEL.read_value(4, 6))
        print(column_list)

        new_column_list = []
        for x in column_list.values():
            new_column_list.append(x)
        #详情介绍链接
        detail_links = []
        for i in new_column_list:
            json_data = {
                "spe_code": i,
                "timestamp": str(int(time.time())),
                "token": self.uid_token,
                "nonce": get_digit()
            }
            json_data['sign'] = get_sign(json_data)
            r = self.s.post(url,
                            headers=self.header,
                            json=json_data,
                            verify=False)
            #print(r.json())
            detail_links.append(r.json()['data']['detail_link'])
            self.assertEqual('请求成功.',
                             r.json()['note'],
                             msg='专栏信息返回的状态不是请求成功,有问题!')
        #下面测试专栏介绍的链接

        for link in detail_links:
            r2 = self.s.get(link, verify=False)
            self.assertEqual(200, r2.status_code, msg='专栏介绍链接返回状态码不是200!')

    def tearDown(self):
        self.s.close()
Пример #7
0
class Tickets(unittest.TestCase):

    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s) #实例化登录类
        self.uid_token = self.lgin.login() #直接取第二部登录
        self.header = {'User-Agent':  'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
                       'Accept-Encoding':  'gzip, deflate',
                       'Accept-Language':  'zh-Hans-CN;q=1',
                       'Content-Type':  'application/json',
                       'requestApp':  '3',
                       'requestclient':  '2',
                       'versionForApp':  '2.0',
                       'Authorization':  'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                       'Connection':  'keep-alive'}
        self.log = Log()#实例化日志的类
        self.excel = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_tickets(self):
        u'我的会议门票接口'
        self.log.info('开始测试会议门票接口!')
        url = 'http://api.meet.sunnycare.cc/v2/ticket/mine'
        json_data = {
            "token":self.uid_token,
            "timestamp": str(int(time.time())),
            "nonce": get_digit()
        }
        #入参加密
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('会议门票返回的结果是:%s' % r.json())
        self.assertEqual('请求成功.',r.json()['note'])
        #取出ticket_code供门票详情接口调用
        ticket_code = r.json()['data']['content']
        code = {}
        j = 1
        for i in ticket_code:
            code['ticket_co'+str(j)] = (i['ticket_order_code'])
        self.excel.write_value(16,6,code)
        self.log.info('会议门票接口测试结束!')


    def tearDown(self):
        self.s.close()
Пример #8
0
class Contact(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s) #实例化登录类
        self.uid_token = self.lgin.login() #直接取第二部登录
        self.header = {'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
                       'Accept-Encoding': 'gzip, deflate',
                       'Accept-Language': 'zh-Hans-CN;q=1',
                       'Content-Type': 'application/json',
                       'requestApp': '3',
                       'requestclient': '2',
                       'versionForApp': '2.0',
                       'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                       'Connection': 'keep-alive'}
        self.log = Log()#实例化日志的类
        self.excel = Excel_util(r'C:\Users\Administrator\Desktop\interface_testcase.xls')

    def test_contact_list(self):
        u'联系人列表接口'
        self.log.info('参会人列表接口测试开始')
        url = 'http://api.meet.sunnycare.cc/v2/contact/records'
        json_data = {
            "token":self.uid_token,
            "nonce": get_digit(),
            "timestamp": str(int(time.time()))
        }
        #入参加密
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('参会人列表返回内容是:%s' % r.json())
        conten = r.json()['data']['content']
        contact_code = {}
        j = 1
        for i in conten:
            contact_code['contact_code'+str(j)] = i['contact_code']
            j += 1
        #将contact_code写入excel供其他借口调用
        self.excel.write_value(15,6,contact_code)
        self.log.info('参会人列表接口测试结束!')

    def tearDown(self):
        self.s.close()
Пример #9
0
class Con(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.login()  #直接取第二部登录
        self.header = {
            'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()  #实例化日志的类
        self.exel = Excel_util(
            r'C:\Users\Administrator\Desktop\interface_testcase.xls')

    def test_delete_contacts(self):
        u'删除联系人接口'
        self.log.info('删除联系人接口测试开始!')
        url = 'http://api.meet.sunnycare.cc/v2/contact/del'
        #读取contact_code
        code = self.exel.read_value(15, 6)
        be_code = json.loads(code)
        #如果非空
        if code:
            for v in be_code.values():
                json_data = {
                    "token": self.uid_token,
                    "contact_code": v,  #读取excel中的code,
                    "timestamp": str(int(time.time())),
                    "nonce": get_digit()
                }
                #入参加密
                json_data['sign'] = get_sign(json_data)
                r = self.s.post(url, headers=self.header, json=json_data)
                self.log.info('删除该条联系人返回结果是:%s' % r.json())
                self.assertEqual('请求成功.', r.json()['note'])
        else:
            self.log.warning('参会人code为空')
        self.log.info('删除联系人接口测试结束!!')

    def tearDown(self):
        self.s.close()
Пример #10
0
    def setUpClass(cls):

        cls.s = requests.session()
        cls.lgin = LG(cls.s)  #实例化登录类
        cls.uid_token = cls.lgin.login()  #直接取第二部登录
        cls.header = {
            'RequestClient': '1',
            'RequestApp': '3',
            'VersionForApp': '2.1.0',
            'User-Agent':
            'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.108 Safari/537.36 2345Explorer/8.0.0.13547',
            'Cache-Control': 'max-age=0',
            'Upgrade-Insecure-Requests': '1',
            'X-Requested-With': 'XMLHttpRequest',
            'Content-Type': 'application/json; charset=utf-8',
            #'Content-Length': '55',
            'Connection': 'Keep-Alive',
            'Accept-Encoding': 'gzip'
        }
        cls.log = Log()  #实例化日志的类
        cls.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')
Пример #11
0
class Contact(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.login()  #直接取第二部登录
        self.header = {
            'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()  #实例化日志的类
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\interface_testcase.xls')

    def test_update_contacts01(self):
        u'更新联系人-更新名字'
        #先读取一个参会人code然后更新其信息
        read_code = self.excel.read_value(15, 6)
        be_use_code = json.loads(read_code)
        update_url = 'http://api.meet.sunnycare.cc/v2/contact/update'

        json_data = {
            "token": self.uid_token,
            "name": '更新后的名字',
            "contact_code": be_use_code['contact_code1'],
            "phone": '13605246089',
            "sex": '0',
            "address": '江苏省南京市江宁区',
            "company": '南京麦澜德',
            "job": 'xxx',
            "job_title": 'sss',
            "is_from_base": '1',
            "timestamp": str(int(time.time())),
            "nonce": get_digit()
        }
        #入参加密
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(update_url, headers=self.header, json=json_data)
        self.assertEqual(200, r.json()['code'])

    def test_update_contacts02(self):
        u'更新联系人-更新号码'
        read_code = self.excel.read_value(15, 6)
        be_use_code = json.loads(read_code)
        update_url = 'http://api.meet.sunnycare.cc/v2/contact/update'
        json_data = {
            "token": self.uid_token,
            "name": '更新后的名字',
            "contact_code": be_use_code['contact_code1'],
            "phone": '13888888888',
            "sex": '0',
            "address": '江苏省南京市江宁区',
            "company": '南京麦澜德',
            "job": 'xxx',
            "job_title": 'sss',
            "is_from_base": '1',
            "timestamp": str(int(time.time())),
            "nonce": get_digit()
        }
        #入参加密
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(update_url, headers=self.header, json=json_data)
        self.assertEqual(200, r.json()['code'])

    def test_update_contacts03(self):
        u'更新联系人-更新名字'
        read_code = self.excel.read_value(15, 6)
        be_use_code = json.loads(read_code)
        update_url = 'http://api.meet.sunnycare.cc/v2/contact/update'
        json_data = {
            "token": self.uid_token,
            "name": '更新后的名字2',
            "contact_code": be_use_code['contact_code1'],
            "phone": '13888888888',
            "sex": '0',
            "address": '北京市江宁区天元东路122号',
            "company": '南京麦澜德',
            "job": 'xxx',
            "job_title": 'sss',
            "is_from_base": '1',
            "timestamp": str(int(time.time())),
            "nonce": get_digit()
        }
        #入参加密
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(update_url, headers=self.header, json=json_data)
        self.assertEqual(200, r.json()['code'])

    def tearDown(self):
        self.s.close()
Пример #12
0
class Trian_record(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.get_token()  #直接取账号登录的token
        #self.auto_login_token = self.lgin.get_autologin_token() #取自动登录的token
        self.header = {
            'User-Agent': 'LanTingDoctor/2.0.2 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_get_user_trian_record(self):
        #测试前提是该医生有已绑定的用户
        u'医生根据日期查看用户训练记录接口'
        self.log.info('开始测试医生根据日期查看用户训练记录接口.....')

        #'这是获取已绑定的列表'
        url = 'http://api.rih.sunnycare.cc/API/V1/DoctorToUserReleationShip/getReleathionShipInfo'
        json_data = {"token": self.uid_token}
        r = self.s.post(url, headers=self.header, json=json_data)
        Patients = r.json()['data']
        User_UID = []
        for i in Patients:
            User_UID.append(i['UserUID'])
        print('当前医生绑定的用户的User_UID是:', User_UID)

        #判断当前医生是否有绑定的用户来执行不同操作
        if len(User_UID) >= 1:
            #如果有绑定的用户则:
            url2 = 'http://api.rih.sunnycare.cc/API/V1/UserTrainRecord/getUserTrainRecordByDoctorAndYearMonth'
            #列表存的是月份
            L = ['01', '02', '03', '04', '05', '06']
            for i in L:
                json_data2 = {
                    "userUID": "hms7W3a1nG54IeBD6C9qtiuw82TjZVMQ",
                    "year": "2018",
                    "token": self.uid_token,
                    "month": i
                }
                r2 = self.s.post(url2, headers=self.header, json=json_data2)
                print(r2.json())
                self.assertEqual(200, r2.json()['code'])

        else:
            self.log.warning('该医生还没有绑定的用户!')

        self.log.info('医生根据日期查看用户训练记录接口测试结束!!')

    def test_user_plan_trian_record(self):
        u'医生查看用户某一方案的治疗记录'
        self.log.info('开始测试医生查看用户某一方案训练记录接口.....')

        #'这是获取已绑定的列表'
        url = 'http://api.rih.sunnycare.cc/API/V1/DoctorToUserReleationShip/getReleathionShipInfo'
        json_data = {"token": self.uid_token}
        r = self.s.post(url, headers=self.header, json=json_data)
        Patients = r.json()['data']
        User_UID = []
        for i in Patients:
            User_UID.append(i['UserUID'])
        print('当前医生绑定的用户的User_UID是:', User_UID)

        #判断当前医生是否有绑定的用户来执行不同操作
        if len(User_UID) >= 1:
            #将excel中courseid 读取出来
            read_course_id = self.excel.read_value(11, 6)
            #将json转换成可用的dict
            need_course_id = json.loads(read_course_id)
            print(need_course_id)

            for c in need_course_id.values():
                url3 = 'http://api.rih.sunnycare.cc/API/V1/UserTrainRecord/getUserTrainRecordByCourseUIDForDoctor'
                json_data3 = {
                    "token": self.uid_token,
                    "userUID": User_UID[0],
                    "courseUID": c
                }
                r3 = self.s.post(url3, headers=self.header, json=json_data3)
                #断言结果
                self.assertEqual(200, r3.json()['code'])

        else:
            self.log.warning('该医生还没有绑定的用户!')

        self.log.info('医生查看用户某一方案训练记录接口测试结束!!')

    def tearDown(self):
        self.s.close()
Пример #13
0
class Trian(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s)  #实例化登录类
        self.uid_token = self.lgin.get_token()  #直接取账号登录的token
        self.auto_login_token = self.lgin.get_autologin_token()  #取自动登录的token
        self.header = {
            'User-Agent': 'LanTingDoctor/2.0.2 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_get_user_plan(self):
        u'医生获取用户训练方案接口'
        self.log.info('开始测试医生查看用户训练方案接口.....')

        #'这是获取已绑定的列表'
        url = 'http://api.rih.medohealth.com/API/V1/DoctorToUserReleationShip/getReleathionShipInfo'
        json_data = {"token": self.auto_login_token}
        r = self.s.post(url, headers=self.header, json=json_data)
        Patients = r.json()['data']
        User_UID = []
        for i in Patients:
            User_UID.append(i['UserUID'])
        print(User_UID)

        #判断当前医生是否有绑定的用户来执行不同操作
        if len(User_UID) >= 1:
            #当绑定不为空时,医生再去获取用户的方案
            for id in User_UID:
                url_2 = 'http://api.rih.medohealth.com/API/V1/UserTrainCourse/getUserTrainCourseByDoctor'
                json_data_2 = {"token": self.auto_login_token, "userUID": id}
                r2 = self.s.post(url_2, headers=self.header, json=json_data_2)
                self.assertEqual(200, r2.json()['code'])
                plans = r2.json()['data']
            #将方案的course id写入excel供调用
            course_ids = {}
            n = 1
            for p in plans:
                #print(p)
                course_ids['corse_id_' + str(n)] = p['utcUID']
                n += 1
            self.excel.write_value(11, 6, course_ids)

        else:
            self.log.warning('该医生还没有绑定的用户!')

        self.log.info('医生查看用户训练方案接口测试结束!')

    def test_get_doctor_plan(self):
        u'医生获取训练方案接口'
        self.log.info('开始测试医生的训练方案接口.....')
        url = 'http://api.rih.medohealth.com/API/V1/DoctorTrainCourse/getTrainCourseForDoctor'
        json_data = {"token": self.auto_login_token}
        r = self.s.post(url, headers=self.header, json=json_data)
        print(r.json())
        self.assertEqual(200, r.json()['code'])
        self.log.info('医生的训练方案接口测试结束!!')

    def tearDown(self):
        self.s.close()
Пример #14
0
class Recommend(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
        self.header = {'User-Agent': 'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
                       'Accept-Encoding': 'gzip, deflate',
                       'Accept-Language': 'zh-Hans-CN;q=1',
                       'Content-Type': 'application/json',
                       'requestApp': '2',
                       'requestclient': '2',
                       'versionForApp': '4.1.1',
                       'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                       'Connection': 'keep-alive'
                       }
        self.log = Log()
        self.excel = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_recommend(self):
        u'推荐内容接口-参数正常'
        self.log.info('测试推荐内容接口-参数正常')
        url = get_content('sns_base_url')+'/v1/recommend/content'
        json_data = {
            "token":self.auto_login_token,
            "time":0,
            "page":1
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('返回的内容是:%s' % r.json())
        con = r.json()['data']['content']
        d = {}
        n = 1
        for i in con:
            d['feed_id_'+str(n)] = i['id']
            n += 1
        self.excel.write_value(13,6,d)
        self.assertEqual(200,r.json()['code'])
        self.assertEqual('请求成功',r.json()['note'])
        self.assertTrue(r.json()['data']) #判断data不为空
        self.log.info('测试推荐内容接口-参数正常情况测试结束!\n')

    def test_recommend2(self):
        u'推荐内容接口-无token'
        self.log.info('测试推荐内容接口-无token')
        url = get_content('sns_base_url')+'/v1/recommend/content'
        json_data = {
            #"token":self.auto_login_token,
            "time":0,
            "page":1
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('返回的内容是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.assertEqual('请求成功',r.json()['note'])
        self.assertTrue(r.json()['data']) #判断data不为空
        self.log.info('测试推荐内容接口-无token情况测试结束!\n')

    def test_recommend_user(self):
        u'推荐用户接口-参数正常'
        self.log.info('测试推荐用户接口-参数正常')
        url = get_content('sns_base_url')+'/v1/recommend/user'
        json_data = {
            "token":self.auto_login_token,
            "time":0,
            "page":1
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('返回的内容是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.assertEqual('请求成功',r.json()['note'])
        self.assertTrue(r.json()['data'])
        self.log.info('测试推荐用户接口-参数正常情况测试结束!\n')

    def test_recommend_user2(self):
        u'推荐用户接口-无token'
        self.log.info('测试推荐用户接口-无token')
        url = get_content('sns_base_url')+'/v1/recommend/user'
        json_data = {
            #"token":self.auto_login_token,
            "time":0,
            "page":1
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('返回的内容是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.assertEqual('请求成功',r.json()['note'])
        self.assertTrue(r.json()['data'])
        self.log.info('测试推荐用户接口-无token情况测试结束!\n')


    def tearDown(self):
        self.s.close()
Пример #15
0
class Meet(unittest.TestCase):
    def setUp(self):
        #banner获取接口
        self.s = requests.session()
        self.lgin = LG(self.s) #实例化登录类
        self.uid_token = self.lgin.login() #直接取第二部登录
        self.header = {'User-Agent': 'LanTingDoctor/1.3.1 (iPad; iOS 10.1.1; Scale/2.00)',
                       'Accept-Encoding': 'gzip, deflate',
                       'Accept-Language': 'zh-Hans-CN;q=1',
                       'Content-Type': 'application/json',
                       'requestApp': '3',
                       'requestclient': '2',
                       'versionForApp': '2.0',
                       'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                       'Connection': 'keep-alive'
                       }
        self.log = Log()
        self.EXCEL = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_getbanner(self):
        u'测试获取banner链接接口'
        self.log.info('----------开始测试获取banner接口-----------')
        url = 'http://api.meet.sunnycare.cc/v2/banner'
        json_data = {
            "token":self.uid_token,
            'timestamp': str(int(time.time())),
            'nonce':get_digit()
        }
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(url=url,headers = self.header,json=json_data)
        self.log.info('返回的内容是:%s' % r.json())
        try:
            self.assertEqual('请求成功.',r.json()['note'])
            self.assertEqual(200,r.json()['code'])
            self.log.info('接口返回状态成功!')
        except Exception as e:
            self.log.error('请求失败,原因是:%s' % e)
            raise AssertionError

        #取出json中banner链接依次进行get
        links = r.json()['data']
        for link in links:
            super_link = link['image']
            r2 = self.s.get(url=super_link,headers = self.header)
            try:
                self.assertEqual(200,r2.status_code)
                self.log.info('banner链接请求成功')
            except Exception as e:
                self.log.error('banner链接请求失败,原因:%s' % e)
                raise AssertionError
        self.log.info('----------banner接口测试结束-----------')


    def test_get_meets(self):
        u'测试获取会议接口'
        url = 'http://api.exam.wrightin.com/v1/meetNew'
        self.log.info('------开始获取会议接口测试-------')
        json_data = {
            "token":self.uid_token,
            "time":"0"
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        #判断返回状态
        #print(r.json())
        try:
            self.assertEqual('请求成功.',r.json()['note'])
            self.log.info('获取会议接口返回状态成功')
        except Exception as e:
            self.log.error('返回状态不成功,原因:%s' % e)
            raise AssertionError


        #判断会议内容不为空
        meet_list = r.json()['data']['list']
        try:
            self.assertLessEqual(1,len(meet_list))
            self.log.info('会议内容不为空')
        except Exception as e:
            self.log.error('会议内容为空。原因:%s' % e)
        self.log.info('------获取会议接口测试结束-------')

    def test_meet_info(self):
        u'测试每个具体的会议信息'
        self.log.info('=========开始测试会议信息接口==========')
        #要先获取到每个会议的code
        url_1 = 'http://api.meet.sunnycare.cc/v2/meet/records'
        json_data_1 = {
            "token":self.uid_token,
            "time":"0",
            'timestamp': str(int(time.time())),
            'nonce': get_digit()
        }
        json_data_1['sign'] = get_sign(json_data_1)
        #先获取会议列表
        r1 = self.s.post(url_1,headers = self.header,json=json_data_1)
        #从会议列表中取会议code
        response = r1.json()['data']['list']
        codes = []
        for i in response:
            codes.append(i['code'])
        #print('code::::',codes)
        #循环对每一个会议code获取会议信息
        url_2 = 'http://api.meet.sunnycare.cc/v2/meet'
        #创建考试code list
        exam_codes = []

        for code in codes:
            json_data_2 = {
                "token":self.uid_token,
                "meet_code":code,
                'timestamp': str(int(time.time())),
                'nonce': get_digit()
            }
            json_data_2['sign'] = get_sign(json_data_2)
            r2 = self.s.post(url_2,headers = self.header,json=json_data_2)#json_data可以共用
            #print(r2.json())
            #断言每个会议信息的返回状态
            try:
                self.assertEqual('请求成功.',r2.json()['note'])
                self.log.info('会议信息返回状态成功')
            except Exception as e:
                self.log.error('会议信息返回状态失败,原因:%s' % e)
                raise AssertionError

            #获取试卷code作为关联参数
            d = r2.json()['data']
            exam_codes.append(d['exam_code'])

        #去除exam列表中的空元素
        new_exam_codes = []
        for i in exam_codes:
            if i != '':
                new_exam_codes.append(i)
        print('exam code:' ,new_exam_codes)
        #将exam code 以字典格式写入excel
        D = {}
        x = 1
        for i in new_exam_codes:
            D['exam_code'+ str(x)] = i
            x += 1
        self.EXCEL.write_value(3,5,json.dumps(D))
        self.log.info('=========测试会议信息接口结束==========')


    def test_exam_msg(self):
        u'测试获取考试信息 接口'
        self.log.info('-----------开始测试获取考试信息 接口-----------')
        #之前写入excel是str类型,现在转换为dict类型
        exam_codes = json.loads(self.EXCEL.read_value(3,5))
        self.log.info('读取的考试code是:%s' % exam_codes)
        url = 'http://api.exam.sunnycare.cc/v1/examMsgByMeetCode'
        #循环字典的value作为examcode
        for value in exam_codes.values():
            json_data = {
                "token":self.uid_token,
                "examcode":value,
                "userid":"107dfd1c1ade4a0f820e4897491710c6"
            }
            r = self.s.post(url,headers=self.header,json=json_data)
            try:
                self.assertEqual('请求成功.',r.json()['note'])
                self.log.info('考试信息获取成功!')
            except Exception as e:
                self.log.error('考试信息获取失败,原因是:%s' % e)
                raise AssertionError

        self.log.info('-----------开始测试获取考试信息 接口测试结束!-----------')

    def tearDown(self):
        self.s.close()
Пример #16
0
class Comment(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
        self.header = {
            'User-Agent':
            'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '2',
            'requestclient': '2',
            'versionForApp': '4.1.1',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_comment01(self):
        u'测试评论接口-评论内容正常'
        self.log.info('开始测试评论渟说接口-评论内容正常')
        url = get_content('sns_base_url') + '/v1/comment/add'
        #读取关联参数-推荐的动态的id
        read_recommened_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_recommened_ids)
        L = []
        for i in feed_ids.values():
            L.append(i)
        json_data = {
            "id": L[0],
            "type": "1",
            "token": self.auto_login_token,
            "text": "很棒!"
        }
        r = self.s.post(url, headers=self.header, json=json_data)
        self.log.info('评论feed返回的内容是:%s' % r.json())
        self.assertEqual(200, r.json()['code'])
        self.assertEqual('评论成功.', r.json()['note'])
        self.log.info('评论渟说接口测试结束\n')

    def test_comment02(self):
        u'测试评论接口-评论内容为空'
        self.log.info('开始测试评论渟说接口-评论内容为空')
        url = get_content('sns_base_url') + '/v1/comment/add'
        #读取关联参数-推荐的动态的id
        read_recommened_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_recommened_ids)
        L = []
        for i in feed_ids.values():
            L.append(i)
        json_data = {
            "id": L[0],
            "type": "1",
            "token": self.auto_login_token,
            "text": ""
        }
        r = self.s.post(url, headers=self.header, json=json_data)
        self.log.info('评论为空feed返回的内容是:%s' % r.json())
        self.assertEqual(200, r.json()['code'])
        self.assertEqual('text 的长度要求为 1 - 800.', r.json()['note'])
        self.log.info('评论渟说-评论内容为空测试结束\n')

    def test_comment03(self):
        u'删除评论接口'
        self.log.info('开始测试删除评论接口')
        #删除评论接口
        url = get_content('sns_base_url') + '/v1/comment/delete'
        #评论记录接口
        pre_url = get_content('sns_base_url') + '/v1/comment/records'
        #读取关联参数-推荐的动态的id
        read_recommened_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_recommened_ids)
        L = []
        for i in feed_ids.values():
            L.append(i)
        pre_json_data = {
            "token": self.auto_login_token,
            "id": L[0],
            "time": 0,
            "page": 1
        }
        respon = self.s.post(pre_url, headers=self.header, json=pre_json_data)
        comment = respon.json()['data']['content']
        #获取评论id
        comment_id = []
        for x in comment:
            comment_id.append(x['comment_id'])
        #循环删除评论
        for y in comment_id:
            json_data = {"token": self.auto_login_token, "comment_id": y}
            r = self.s.post(url, headers=self.header, json=json_data)
            self.log.info('删除评论feed返回的内容是:%s' % r.json())
            self.assertEqual(200, r.json()['code'])
            self.assertEqual('删除评论成功.', r.json()['note'])
        self.log.info('删除评论接口测试结束\n')

    def tearDown(self):
        self.s.close()
Пример #17
0
class Mystudy(unittest.TestCase):

    def setUp(self):
        self.s = requests.session()
        self.lgin = LG(self.s) #实例化登录类
        self.uid_token = self.lgin.login() #登录
        self.header = {
            'User-Agent': 'LanTingDoctor/2.0.2 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '3',
            'requestclient': '2',
            'versionForApp': '2.0',
            'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_mystudy(self):
        u'测试我的学习接口'
        self.log.info('-----开始测试测试我的学习接口-----')
        url = 'http://api.lesson.sunnycare.cc/v1/learns'
        json_data = {
            "token":self.uid_token,
            "time": "0",
            "timestamp": str(int(time.time())),
            "nonce": get_digit()
        }
        json_data['sign'] = get_sign(json_data)
        r = self.s.post(url,headers = self.header,json=json_data,verify=False)
        print(r.json())
        self.assertEqual('请求成功.',r.json()['note'])
        lessons = r.json()['data']['list']

        #定义全局变量 学习code
        global study_codes
        study_codes = []
        for i in lessons:
            study_codes.append(i['code'])
        print('study_codes:  ',study_codes)

        #课程code
        lesson_codes = []
        for x in lessons:
            lesson_codes.append(x['lesson_code'])
        print('lesson_codes',lesson_codes)
        #创建字典 写入excel
        m = {}
        j = 1
        for z in lesson_codes:
            m['lessoncode'+ str(j)] = z
            j += 1
        self.excel.write_value(7,6,m)

        self.log.info('----测试我的学习接口结束----')

    def test_add_study_chap(self):
        u'测试增加课程的学习进度接口'
        self.log.info('====开始测试增加课程的学习进度接口=====')
        #先通过课程接口来获取章节
        url = 'http://api.lesson.sunnycare.cc/v1/lesson'
        lesson_codes = json.loads(self.excel.read_value(7,6))

        #定义全局变量
        global chap_codes
        chap_codes = []
        for value in lesson_codes.values():
            json_data = {
                "lesson_code":value,
                "token":self.uid_token,
                "timestamp": str(int(time.time())),
                "nonce": get_digit()
                     }
            json_data['sign'] = get_sign(json_data)
            r = self.s.post(url,headers = self.header,json=json_data,verify=False)
            #断言,我的学习中的每一个课程的标签都应是‘已加入学习’
            print(r.json())
            self.assertEqual('已加入学习',r.json()['data']['btn'][0]['btn_name'])

            #将chap_code 加入chap_codes列表
            for y in (r.json()['data']['chap_list']):
                chap_codes.append(y['chap_code'])
        print('chap_codes:',chap_codes)

        url_2 = 'http://api.lesson.sunnycare.cc/v1/learn/chapadd'

        for i in chap_codes:
            json_data2 = {
                "chap_code":i,
                "timestamp":str(int(time.time())),
                "token":self.uid_token,
                "nonce": get_digit()
                       }
            json_data2['sign'] = get_sign(json_data2)
            r2 = self.s.post(url_2,headers = self.header,json=json_data2,verify=False)
            self.assertEqual('请求成功',r2.json()['note'],msg='增加课程的学习进度失败')

        self.log.info('====测试增加课程的学习进度接口结束=====')


    '''
    def test_remove_study(self):
        u'这是测试取消加入学习接口'
        self.log.info('-----开始测试测试取消加入学习接口--------')
        url = 'https://api.lesson.wrightin.com/v1/learn/remove'
        for i in study_codes:
            json_data = {
                "timestamp":str(time.time()),
                "learn_code":i,
                "token":self.uid_token
            }
            try:
                r2 = self.s.post(url,headers = self.header,json=json_data)
                self.assertEqual('请求成功',r2.json()['note'])
                self.log.info('取消加入学习成功')
            except Exception as e:
                self.log.error('取消介入学习失败。原因:%s' % e)
        self.log.info('-------测试取消加入学习接口结束------')
    '''

    def tearDown(self):
        self.s.close()
Пример #18
0
class Feed(unittest.TestCase):
    def setUp(self):
        self.s = requests.session()
        self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
        self.header = {
            'User-Agent':
            'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
            'Accept-Encoding': 'gzip, deflate',
            'Accept-Language': 'zh-Hans-CN;q=1',
            'Content-Type': 'application/json',
            'requestApp': '2',
            'requestclient': '2',
            'versionForApp': '4.1.1',
            'Authorization':
            'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
            'Connection': 'keep-alive'
        }
        self.log = Log()
        self.excel = Excel_util(
            r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_user_feed01(self):
        u'测试发布文字-不发布到圈子-参数正常'
        self.log.info('测试发布文字接口-不发布到圈子')
        url = get_content('sns_base_url') + '/v1/feed/add'
        json_data = {"token": self.auto_login_token, "text": "你知道我在等你吗"}
        r = self.s.post(url, headers=self.header, json=json_data)
        self.log.info('返回的内容是是:%s' % r.json())
        self.assertEqual(200, r.json()['code'])
        self.assertEqual('动态发布成功.', r.json()['note'])
        self.log.info('测试发布文字接口-不发布到圈子情况测试结束\n')

    def test_user_feed02(self):
        u'获取用户动态接口-参数正常'
        self.log.info('测试用户动态接口-参数正常')
        url = get_content('sns_base_url') + '/v1/user/feed'
        json_data = {"user_id": "U00014", "time": 0, "page": 1}
        r = self.s.post(url, headers=self.header, json=json_data)
        self.log.info('返回的内容:%s' % r.json())
        self.assertEqual(200, r.json()['code'])
        self.assertEqual('请求成功', r.json()['note'])
        self.assertTrue(r.json()['data'])  #判断data不为空
        con = r.json()['data']['content']

        L = []
        for i in con:
            L.append(i['id'])
            #print(i['id'])
        #print('ids:',L)

        d = {}
        n = 1
        for x in L:
            d['feed_id-' + str(n)] = x
            n += 1
        self.excel.write_value(12, 6, d)
        self.log.info('测试用户动态接口-参数正常情况结束!\n')

    time.sleep(2)

    def test_user_feed03(self):
        u'feed详情接口-参数正常'
        url = get_content('sns_base_url') + '/v1/feed/record'
        self.log.info('开始测试feed详情接口')
        read_feed_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_feed_ids)
        #print(type(feed_ids))
        #迭代字典的value

        for x in feed_ids.values():

            json_data = {"feed_id": x, "token": self.auto_login_token}
            r = self.s.post(url, headers=self.header, json=json_data)
            self.log.info('%s详情返回的内容:%s' % (x, r.json()))
            #self.assertEqual(200,r.json()['code'])
            self.assertEqual('请求成功', r.json()['note'])
            self.assertTrue(r.json()['data'])  #判断data不为空

        self.log.info('feed详情接口测试结束!\n')

    def test_user_feed04(self):
        u'删除动态接口-参数正常'
        self.log.info('测试删除动态接口-参数正常')
        url = get_content('sns_base_url') + '/v1/feed/delete'
        read_feed_ids = self.excel.read_value(12, 6)
        feed_ids = json.loads(read_feed_ids)
        #print(type(feed_ids))
        #迭代字典的value
        for x in feed_ids.values():
            json_data = {"token": self.auto_login_token, "feed_id": x}
            #需要保留一个动态不删除,后面的接口要用到这条动态中的图片地址

            if json_data['feed_id'] == 'F00083':
                pass
            else:
                r = self.s.post(url, headers=self.header, json=json_data)
                self.log.info('%s返回的内容是:%s' % (x, r.json()))
                self.assertEqual(200, r.json()['code'])
        self.log.info('测试删除动态接口-参数正常情况测试结束!\n')

    def tearDown(self):
        self.s.close()
Пример #19
0
class Screening(unittest.TestCase):
    '''
    这是获取筛查价格的接口
    '''
    def setUp(self):
        self.s = requests.session()
        self.auto_login_token = auto_login_by_UID()  #auto_login_by_UID返回的token
        self.header = {'User-Agent': 'PelvicFloorPersonal/4.1.1 (iPad; iOS 10.1.1; Scale/2.00)',
                       'Accept-Encoding': 'gzip, deflate',
                       'Accept-Language': 'zh-Hans-CN;q=1',
                       'Content-Type': 'application/json',
                       'requestApp': '2',
                       'requestclient': '2',
                       'versionForApp': '4.1.1',
                       'Authorization': 'Basic YXBpTGFudGluZ0BtZWRsYW5kZXIuY29tOkFwaVRobWxkTWxkQDIwMTM=',
                       'Connection': 'keep-alive'
                       }
        self.log = Log()
        self.excel = Excel_util(r'C:\Users\Administrator\Desktop\Interface_testcase.xls')

    def test_screening_price(self):
        u'获取筛查价格接口'
        self.log.info('开始测试筛查价格接口!')
        url = 'http://api.rih.sunnycare.cc/API/V1/UserAssessRecord/screeninfo'
        json_data = {
            "token":self.auto_login_token
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('筛查价格返回内容是:%s' % r.json())
        try:
            self.assertEqual(200,r.json()['code'])
        except Exception as e:
            print(e)
            raise AssertionError

        self.log.info('筛查价格接口测试结束!')

    def test_get_report01(self):
        '查看我的筛查/评估报告列表'
        self.log.info('测试查看评估筛查报告列表接口:')
        url = 'http://api.rih.sunnycare.cc/API/V1/UserAssessRecord/getUserAssessRecordByUserID'
        json_data = {
            "token": self.auto_login_token,
            "timestamp": int(time.time()),
            "page": 1
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('评估筛查报告接口返回内容是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        #取出报告id写入excel
        id = r.json()['data']['content'][0]['local_id']
        self.excel.write_value(17,6,id)
        self.log.info('查看评估筛查报告接口测试结束!')


    def test_get_assess_count(self):
        u'获取可用评估次数接口'
        self.log.info('测试可用评估次数接口:')
        url = 'http://api.rih.sunnycare.cc/API/V1/UserAssessRecord/assesscount'
        json_data = {
            "token": self.auto_login_token
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('评估次数返回结果是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.log.info('可用评估次数接口测试结束!')

    def test_Assess_price(self):
        u'获取评估价格接口'
        self.log.info('开始测试评估价格接口:')
        url = 'http://api.rih.sunnycare.cc/API/V1/UserAssessRecord/assessinfo'
        json_data = {
            "token": self.auto_login_token
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('评估价格返回的结果是:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.log.info('评估价格接口测试结束')

    def test_get_report02(self):
        u'查看评估/筛查详情接口'
        self.log.info('查看评估/筛查详情接口')
        url = 'http://api.rih.sunnycare.cc/API/V1/UserAssessRecord/getUserAssessRecord'
        #读取报告id作为入参
        read_id = self.excel.read_value(17,6)
        json_data = {
            "token": self.auto_login_token,
            "id": read_id
        }
        r = self.s.post(url,headers = self.header,json=json_data)
        self.log.info('查看报告详情返回:%s' % r.json())
        self.assertEqual(200,r.json()['code'])
        self.log.info('查看评估/筛查详情接口结束!!')


    def tearDown(self):
        self.s.close()