Beispiel #1
0
 def test_login(self, case):
     url = Yaml.read_yaml('headers', 'url') + case.interface
     data = Parametric().parametric(case.data)
     data = self.session.convert_data(data)
     if case.select_sql:
         user_info = self.mysql.run_sql(case.select_sql, data['mobile_phone'])
         setattr(Parametric, 'login_amount', user_info[0]['leave_amount'])
     response = self.session.send_requests(url, case.method, data)
     expect = Parametric().parametric(case.expect)
     expect = self.session.convert_data(expect)
     try:
         self.assertEquals(response['code'], expect['code'])
         if case.select_sql:
             self.assertEquals(response['data']['id'], expect['id'])
             self.assertEquals(response['data']['reg_name'], expect['reg_name'])
             self.assertEquals(response['data']['mobile_phone'], expect['mobile_phone'])
             self.assertEquals(response['data']['type'], expect['type'])
             self.assertEquals(response['data']['leave_amount'], expect['leave_amount'])
     except AssertionError as e:
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), str(e))
         raise e
     else:
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), '通过')
Beispiel #2
0
 def test_recharge(self, case):
     url = Yaml.read_yaml('headers', 'url') + case.interface
     data = Parametric().parametric(case.data)
     data = self.session.convert_data(data)
     expect = Parametric().parametric(case.expect)
     expect = self.session.convert_data(expect)
     old_amount = None
     if case.select_sql:
         user_info = self.mysql.run_sql(case.select_sql, expect['id'])
         old_amount = float(user_info[0]['leave_amount'])
         old_amount = round(old_amount, 2)
     response = self.session.send_requests(url, case.method, data)
     try:
         self.assertEquals(response['code'], expect['code'])
         if case.select_sql:
             self.assertEquals(response['data']['id'], expect['id'])
             self.assertEquals(response['data']['reg_name'], expect['reg_name'])
             self.assertEquals(response['data']['mobile_phone'], expect['mobile_phone'])
             self.assertEquals(response['data']['type'], expect['type'])
             user_info = self.mysql.run_sql(case.select_sql, expect['id'])
             new_amount = float(user_info[0]['leave_amount'])
             new_amount = round(new_amount, 2)
             self.assertEquals(response['data']['leave_amount'], new_amount)
             self.assertEquals(expect['amount'], round((new_amount - old_amount), 2))
     except AssertionError as e:
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), str(e))
         raise e
     else:
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
         self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), '通过')
         if 'token_info' in str(response):
             token = {}
             token['Authorization'] = 'Bearer ' + response['data']['token_info']['token']
             self.session.add_headers(token)
Beispiel #3
0
 def __init__(self):
     self.sql = pymysql.connect(host=Yaml.read_yaml('mysql', 'host'),
                                user=Yaml.read_yaml('mysql', 'user'),
                                password=Yaml.read_yaml('mysql', 'pwd'),
                                port=Yaml.read_yaml('mysql', 'port'),
                                db=Yaml.read_yaml('mysql', 'db'),
                                charset='utf8',
                                cursorclass=pymysql.cursors.DictCursor)
     self.mysql = self.sql.cursor()
Beispiel #4
0
    def test_lan_add(self, case):
        url = Yaml.read_yaml('headers', 'url') + case.interface
        data = Parametric().parametric(case.data)
        data = self.session.convert_data(data)
        expect = Parametric().parametric(case.expect)
        expect = self.session.convert_data(expect)
        response = self.session.send_requests(url, case.method, data)
        try:
            self.assertEquals(response['code'], expect['code'])
            if case.select_sql:
                user_info = self.mysql.run_sql(case.select_sql,
                                               expect['member_id'])
                self.assertEquals(response['data']['member_id'],
                                  expect['member_id'])
                self.assertEquals(response['data']['title'], expect['title'])
                self.assertEquals(response['data']['loan_rate'],
                                  expect['loan_rate'])
                self.assertEquals(response['data']['loan_term'],
                                  expect['loan_term'])
                self.assertEquals(response['data']['loan_date_type'],
                                  expect['loan_date_type'])
                self.assertEquals(response['data']['bidding_days'],
                                  expect['bidding_days'])
                self.assertEquals(response['data']['amount'], expect['amount'])

                self.assertEquals(response['data']['title'],
                                  user_info['title'])
                self.assertEquals(response['data']['loan_rate'],
                                  user_info['loan_rate'])
                self.assertEquals(response['data']['loan_term'],
                                  user_info['loan_term'])
                self.assertEquals(response['data']['loan_date_type'],
                                  user_info['loan_date_type'])
                self.assertEquals(response['data']['bidding_days'],
                                  user_info['bidding_days'])
                self.assertEquals(response['data']['amount'],
                                  user_info['amount'])
                self.assertEquals(response['data']['id'], user_info['id'])
        except AssertionError as e:
            self.data_xlsx.write_xlsx(case.case_id,
                                      Yaml.read_yaml('xlsx', 'clunm'),
                                      str(response))
            self.data_xlsx.write_xlsx(case.case_id,
                                      Yaml.read_yaml('xlsx', 'clunm1'), str(e))
            raise e
        else:
            self.data_xlsx.write_xlsx(case.case_id,
                                      Yaml.read_yaml('xlsx', 'clunm'),
                                      str(response))
            self.data_xlsx.write_xlsx(case.case_id,
                                      Yaml.read_yaml('xlsx', 'clunm1'), '通过')
            if 'token_info' in str(response):
                token = {}
                token['Authorization'] = 'Bearer ' + response['data'][
                    'token_info']['token']
                self.session.add_headers(token)
Beispiel #5
0
    def test_invest(self, case):
        url = Yaml.read_yaml('headers', 'url') + case.interface
        data = Parametric().parametric(case.data)
        data = self.session.convert_data(data)
        expect = Parametric().parametric(case.expect)
        expect = self.session.convert_data(expect)
        response = self.session.send_requests(url, case.method, data)
        try:
            self.assertEquals(response['code'], expect['code'])
            if case.select_sql:
                sql = Parametric().parametric(case.select_sql)
                user_info = self.mysql.run_sql(sql)
                if case.case_id < 7:
                    if hasattr(Parametric, 'item_id1') is False:
                        setattr(Parametric, 'item_id1', str(user_info[0]['id']))
                    elif hasattr(Parametric, 'item_id2') is False:
                        setattr(Parametric, 'item_id2', str(user_info[0]['id']))
                    elif hasattr(Parametric, 'item_id3') is False:
                        setattr(Parametric, 'item_id3', str(user_info[0]['id']))
                else:
                    amount = float(user_info[0]['amount'])
                    amount = round(amount, 2)
                    self.assertEquals(response['data']['member_id'], user_info[0]['member_id'])
                    self.assertEquals(response['data']['loan_id'], user_info[0]['loan_id'])
                    self.assertEquals(response['data']['is_valid'], user_info[0]['is_valid'])
                    self.assertEquals(response['data']['amount'], amount)
                    self.assertEquals(expect['amount'], amount)
                    self.assertEquals(response['data']['member_id'], expect['member_id'])
                    self.assertEquals(response['data']['loan_id'], int(expect['loan_id']))
                    self.assertEquals(response['data']['amount'], expect['amount'])
                    self.assertEquals(response['data']['is_valid'], expect['is_valid'])

        except AssertionError as e:
            self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
            self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), str(e))
            raise e
        else:
            self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm'), str(response))
            self.data_xlsx.write_xlsx(case.case_id, Yaml.read_yaml('xlsx', 'clunm1'), '通过')
            if 'token_info' in str(response):
                token = {}
                token['Authorization'] = 'Bearer ' + response['data']['token_info']['token']
                self.session.add_headers(token)
Beispiel #6
0
 def send_requests(self, url, method='post', data=None, Json=True, **kwargs):
     data = self.convert_data(data)
     head = Yaml.read_yaml('headers', 'header')['X-Lemonban-Media-Type']
     if hasattr(self, 'token') and head == 'lemonban.v3':
         sig = HandleSign().generate_sign(self.token)
         data.update(sig)
     method = method.lower()
     if method == 'get':
         response = self.session.request(method, url, params=data, **kwargs)
     elif method in ('post', 'patch', 'delete'):
         if Json:
             response = self.session.request(method, url, json=data, **kwargs)
         else:
             response = self.session.request(method, url, data=data, **kwargs)
     else:
         response = '不支持此请求方法'
     return response.json()
Beispiel #7
0
 def setUpClass(cls):
     cls.session = Send_requests()
     cls.mysql = Mysql()
     cls.session.add_headers(Yaml.read_yaml('headers', 'header'))