Exemplo n.º 1
0
    def getorderfriend(self,keys):
        '''验证朋友赠送商品'''

        Log().info("开始进入接受商品页面".center(66, "-"))
        print('开始进入接受商品页面'.center(66, "-"))
        self.test_data_wc[18]['header']['app_id'] = '101'
        self.test_data_wc[18]['url'] = self.test_data_wc[18]['url'] + str(keys) + '/address'

        Log().info("执行用例: " + self.test_data_wc[18]['api_name'] + "-->" + self.test_data_wc[18]['discriptions'])
        response = HttpRquest().http_request(self.test_data_wc[18]['method'], self.test_data_wc[18]['url'],
                                             self.test_data_wc[18]['param'],
                                             self.test_data_wc[18]['header'], cookies=self.Authorization['cookies'])

        if response.status_code == 200:
            Log().info("进入接受商品页面成功".center(66, "-"))
            print('进入接受商品页面成功'.center(66, "-"))
        else:
            Log().info("进入接受商品页面失败".center(66, "-"))
            print('进入接受商品页面失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_wc[18]['Expect']['code']
            assert result['message'] == self.test_data_wc[18]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("进入接受商品页面失败~{0}".format(e))
            print("进入接受商品页面失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_wc[18], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 2
0
    def category(self,product_id):
        ''' 品类商品查询'''
        Log().info("V端查询三级品类商品".center(66, "-"))
        print('V端查询三级品类商品'.center(66, "-"))

        # self.test_data_v[15]['param']['searchText'] = '%E6%97%B6%E5%B0%9A%E7%BE%8E%E5%A6%860%E6%97%B6%E5%B0%9A%E5%BD%A9%E5%A6%860%E7%94%B7%E5%A3%AB%E9%A6%99%E6%B0%B40'

        Log().info("执行用例: " + self.test_data_v[15]['api_name'] + "-->" + self.test_data_v[15]['discriptions'])
        response = HttpRquest().http_request(self.test_data_v[15]['method'], self.test_data_v[15]['url'],
                                             self.test_data_v[15]['param'],
                                             self.test_data_v[15]['header'], cookies=None)


        if response.status_code == 200:
            Log().info("状态码成功返回200".center(66, "-"))
            print('状态码成功返回200'.center(66, "-"))
        else:
            Log().info("状态码返回失败".center(66, "-"))
            print('状态码返回失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_v[15]['Expect']['code']
            assert result['message'] == self.test_data_v[15]['Expect']['message']
            assert result['result']['cards'][0]['product_id'] == str(product_id)

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("品类商品断言结果失败~{0}".format(e))
            print("品类商品断言结果失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_v[15], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))
Exemplo n.º 3
0
    def createproduct(self):
        '''用户添加商品'''

        name = update_yaml(read_path.commondata, "data.yaml", 'num')
        self.test_data_f[0]['param']['title'] = self.test_data_f[0]['param']['title'] + str(name)
        Log().info("开始创建商品".center(66, "-"))
        print('开始创建商品'.center(66, "-"))
        Log().info("执行用例: " + self.test_data_f[0]['api_name'] + "-->" + self.test_data_f[0]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[0]['method'], self.test_data_f[0]['url'],
                                             self.test_data_f[0]['param'],
                                             self.test_data_f[0]['header'], cookies=self.cookies_f)
        if response.status_code == 200 :
            Log().info("商品创建成功".center(66, "-"))
            print('商品创建成功'.center(66, "-"))
        else:
            Log().info("商品创建失败".center(66, "-"))
            print('商品创建失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[0]['Expect']['code']
            assert result['message'] == self.test_data_f[0]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("创建失败~{0}".format(e))
            print("商品创建失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[0], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 4
0
    def batch(self, product_id):
        ''' 用户评价功能'''
        Log().info("C端用户评价后开始评价商品".center(66, "-"))
        print('C端用户评价后开始评价商品'.center(66, "-"))

        # 替换参数
        self.test_data_c[11]['url'] = self.test_data_c[11]['url'] + str(product_id) + '/batch'
        self.test_data_c[11]['param']['productId'] = product_id
        Log().info("执行用例: " + self.test_data_c[11]['api_name'] + "-->" + self.test_data_c[11]['discriptions'])
        response = HttpRquest().http_request(self.test_data_c[11]['method'], self.test_data_c[11]['url'],
                                             self.test_data_c[11]['param'],
                                             self.test_data_c[11]['header'], cookies=None)

        if response.status_code == 200:
            Log().info("状态码成功返回200".center(66, "-"))
            print('状态码成功返回200'.center(66, "-"))
        else:
            Log().info("状态码返回失败".center(66, "-"))
            print('状态码返回失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_c[11]['Expect']['code']
            assert result['message'] == self.test_data_c[11]['Expect']['message']


        except AssertionError as e:  # 抛出断言错误异常
            Log().error("评价预期断言结果失败~{0}".format(e))
            print("评价预期断言结果失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_c[11], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))
Exemplo n.º 5
0
    def refuse(self,order_id):
        ''' 拒绝退货'''
        Log().info("C端用户开始申请退货".center(66, "-"))
        print('C端用户开始申请退货'.center(66, "-"))

        # 替换参数
        self.test_data_f[13]['url'] = self.test_data_f[13]['url'] + str(order_id)

        Log().info("执行用例: " + self.test_data_f[13]['api_name'] + "-->" + self.test_data_f[13]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[13]['method'], self.test_data_f[13]['url'],
                                             self.test_data_f[13]['param'],
                                             self.test_data_f[13]['header'], cookies=self.cookies_f)


        if response.status_code == 200:
            Log().info("状态码成功返回200".center(66, "-"))
            print('状态码成功返回200'.center(66, "-"))
        else:
            Log().info("状态码返回失败".center(66, "-"))
            print('状态码返回失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[13]['Expect']['code']
            assert result['message'] == self.test_data_f[13]['Expect']['message']


        except AssertionError as e:  # 抛出断言错误异常
            Log().error("退货预期断言结果失败~{0}".format(e))
            print("退货预期断言结果失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[13], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))
Exemplo n.º 6
0
    def deliver(self,order_id):
        '''F端发货'''
        Log().info("F端开始发货".center(66, "-"))
        print('成功发货'.center(66, "-"))

        self.test_data_f[7]['url'] = self.test_data_f[7]['url'] + str(order_id)

        Log().info("执行用例: " + self.test_data_f[7]['api_name'] + "-->" + self.test_data_f[7]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[7]['method'], self.test_data_f[7]['url'],
                                             self.test_data_f[7]['param'],
                                             self.test_data_f[7]['header'], cookies=self.cookies_f)

        if response.status_code == 200:
            Log().info("发货成功".center(66, "-"))
            print('发货成功'.center(66, "-"))
        else:
            Log().info("发货失败".center(66, "-"))
            print('发货失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[7]['Expect']['code']
            assert result['message'] == self.test_data_f[7]['Expect']['message']


        except AssertionError as e:  # 抛出断言错误异常
            Log().error("发货接口断言失败~{0}".format(e))
            print("发货接口断言失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[7], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))
Exemplo n.º 7
0
    def applyrefund(self,order_id,order_no):
        '''C端申请退款'''

        Log().info("C端开始申请退款".center(66, "-"))
        print('C端开始申请退款'.center(66, "-"))

        # 替换参数
        self.test_data_c[10]['url'] =  self.test_data_c[10]['url'] + str(order_no)
        self.test_data_c[10]['param']['order_id'] = order_id
        Log().info("执行用例: " + self.test_data_c[10]['api_name'] + "-->" + self.test_data_c[10]['discriptions'])
        response = HttpRquest().http_request(self.test_data_c[10]['method'], self.test_data_c[10]['url'],
                                             self.test_data_c[10]['param'],
                                             self.test_data_c[10]['header'], cookies=None)

        if response.status_code == 200:
            Log().info("确认收货成功".center(66, "-"))
            print('确认收货成功'.center(66, "-"))
        else:
            Log().info("确认发货失败".center(66, "-"))
            print('确认发货失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_c[10]['Expect']['code']
            assert result['message'] == self.test_data_c[10]['Expect']['message']


        except AssertionError as e:  # 抛出断言错误异常
            Log().error("确认收货断言失败~{0}".format(e))
            print("确认收货断言失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_c[10], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))
Exemplo n.º 8
0
    def intbeecardacception(self,id):  #定向蜂卡时传subcard_id  普通卡时传card_id
        '''V端用户将定向峰卡上架'''

        Log().info("开始上架蜂卡".center(66, "-"))
        print('开始上架蜂卡'.center(66, "-"))

        self.test_data_v[2]['url'] = self.test_data_v[2]['url'] + str(id) + '/acception'
        Log().info("执行用例: " + self.test_data_v[2]['api_name'] + "-->" + self.test_data_v[2]['discriptions'])
        response = HttpRquest().http_request(self.test_data_v[2]['method'], self.test_data_v[2]['url'],
                                             self.test_data_v[2]['param'],
                                             self.test_data_v[2]['header'], cookies=None)


        if response.status_code == 200:
            Log().info("上架蜂卡成功".center(66, "-"))
            print('上架蜂卡成功'.center(66, "-"))
        else:
            Log().info("上架蜂卡失败".center(66, "-"))
            print('上架蜂卡失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_v[2]['Expect']['code']
            assert result['message'] == self.test_data_v[2]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("上架蜂卡失败~{0}".format(e))
            print("上架蜂卡失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_v[2], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 9
0
    def intbeecard_creation2(self,product_id):

        self.test_data_f[14]['param']['product_id'] = product_id

        Log().info("开始发送普通蜂卡".center(66, "-"))
        print('成功发送普通蜂卡'.center(66, "-"))
        Log().info("执行用例: " + self.test_data_f[14]['api_name'] + "-->" + self.test_data_f[14]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[14]['method'], self.test_data_f[14]['url'],
                                             self.test_data_f[14]['param'],
                                             self.test_data_f[14]['header'], cookies=self.cookies_f)
        if response.status_code == 200:
            Log().info("开始发送普通蜂卡成功".center(66, "-"))
            print('开始发送普通蜂卡成功'.center(66, "-"))
        else:
            Log().info("开始发送普通蜂卡失败".center(66, "-"))
            print('开始发送普通蜂卡失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[14]['Expect']['code']
            assert result['message'] == self.test_data_f[14]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("开始发送普通蜂卡失败~{0}".format(e))
            print("开始发送普通蜂卡失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[14], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 10
0
def login():
    data = read_yaml(read_path.test_homepage_data, "test_app_login.yaml",
                     config.url)
    Log().info("执行用例: " + data[0]['api_name'] + "-->" +
               data[0]['discriptions'])
    response = HttpRquest().http_request(data[0]['method'],
                                         data[0]['url'],
                                         data[0]['param'],
                                         data[0]['header'],
                                         cookies=None)
    result = response.json()

    yield result['result']['access_token']
Exemplo n.º 11
0
    def intbeecard_creation(self,product_id):
        '''定向发送蜂卡'''

        # d = Mongodb("intbee_product")
        # client = d.get_mongodb_client()
        # db = client.intbee_product
        # collection = db.intbee_store_product
        # # re = collection.find({'title': '流程测试的商品标题3'}).sort("_id", -1)
        # re = collection.find({'title': self.test_data_f[0]['param']['title']}).sort("_id", -1)
        # product_id = re[0]['_id']  # 保存商品id

        self.test_data_f[1]['param']['product_id'] = product_id

        # d.close()  # 关闭数据库


        Log().info("开始发送定向蜂卡".center(66, "-"))
        print('开始发送定向蜂卡'.center(66, "-"))
        Log().info("执行用例: " + self.test_data_f[1]['api_name'] + "-->" + self.test_data_f[1]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[1]['method'], self.test_data_f[1]['url'],
                                             self.test_data_f[1]['param'],
                                             self.test_data_f[1]['header'], cookies=self.cookies_f)
        if response.status_code == 200:
            Log().info("开始发送定向蜂卡成功".center(66, "-"))
            print('开始发送定向蜂卡成功'.center(66, "-"))
        else:
            Log().info("开始发送定向蜂卡失败".center(66, "-"))
            print('开始发送定向蜂卡失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[1]['Expect']['code']
            assert result['message'] == self.test_data_f[1]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("开始发送定向蜂卡失败~{0}".format(e))
            print("开始发送定向蜂卡失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[1], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 12
0
    def searchrorder(self,order_no,status):
        '''F查询订单状态'''
        Log().info("开始查询订单".center(66, "-"))
        print('成功查询订单'.center(66, "-"))

        self.test_data_f[6]['param']['keys'] = order_no
        #替换参数
        self.test_data_f[6]['Expect']['status'] = status

        Log().info("执行用例: " + self.test_data_f[6]['api_name'] + "-->" + self.test_data_f[6]['discriptions'])
        response = HttpRquest().http_request(self.test_data_f[6]['method'], self.test_data_f[6]['url'],
                                             self.test_data_f[6]['param'],
                                             self.test_data_f[6]['header'], cookies=self.cookies_f)


        if response.status_code == 200:
            Log().info("查询订单成功".center(66, "-"))
            print('查询订单成功'.center(66, "-"))
        else:
            Log().info("查询订单失败".center(66, "-"))
            print('查询订单失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_f[6]['Expect']['code']
            assert result['message'] == self.test_data_f[6]['Expect']['message']
            assert result['result'][0]['status'] == self.test_data_f[6]['Expect']['status']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("查询订单断言失败~{0}".format(e))
            print("查询订单断言失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_f[6], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 13
0
    def order2friend(self,product_id,card_id,subcard_id):
        '''用户提交送朋友订单'''

        Log().info("开始提交订单".center(66, "-"))
        print('开始提交订单'.center(66, "-"))

        # 替换参数
        self.test_data_wc[16]['url'] = self.test_data_wc[16]['url'] + str(product_id) + '/subscription/order2friend'
        self.test_data_wc[16]['param']['subcard_id'] = subcard_id
        self.test_data_wc[16]['param']['sku_list'][0]['sku'] = 'F' + str(product_id) + str(card_id) + '1'

        Log().info("执行用例: " + self.test_data_wc[16]['api_name'] + "-->" + self.test_data_wc[16]['discriptions'])
        response = HttpRquest().http_request(self.test_data_wc[16]['method'], self.test_data_wc[16]['url'],
                                             self.test_data_wc[16]['param'],
                                             self.test_data_wc[16]['header'], cookies=self.Authorization['cookies'])
        if response.status_code == 200:
            Log().info("提交订单成功".center(66, "-"))
            print('提交订单成功'.center(66, "-"))
        else:
            Log().info("提交订单失败".center(66, "-"))
            print('提交订单失败'.center(66, "-"))

        result = response.json()
        try:
            assert result['code'] == self.test_data_wc[16]['Expect']['code']
            assert result['message'] == self.test_data_wc[16]['Expect']['message']

        except AssertionError as e:  # 抛出断言错误异常
            Log().error("提交订单失败~{0}".format(e))
            print("提交订单失败")
            raise e
        finally:
            print("请求值:".center(66, "-") + "\n", json.dumps(self.test_data_wc[16], ensure_ascii=False, indent=2), "\n")
            print("返回结果:".center(66, "-") + "\n", json.dumps(result, ensure_ascii=False, indent=2))

        return result
Exemplo n.º 14
0
class BaseCase():
    result = None
    data = None

    def setup(self):
        Log().info("START".center(66, '*'))
        self.http = HttpRquest()
        self.check_json = Check()

    def send_request(self, data, cookies):
        """
        接口请求
        :param data: 测试数据
        :param cookies:
        :return: 接口返回值
        """
        self.data = data
        Log().info("执行用例: " + data['api_name'] + "-->" + data['discriptions'])
        response = self.http.http_request(data['method'],
                                          data['url'],
                                          data['param'],
                                          data['header'],
                                          cookies=cookies)

        print("请求值:".center(66, "-") + "\n",
              json.dumps(data, ensure_ascii=False, indent=2), "\n")
        print("返回状态码:".center(66, "-") + "\n", response.status_code, "\n")
        Log().info(response.status_code)
        self.result = response.json()
        return self.result

    def reassert(self):
        """
        返回值校验,校验方式为json校验
        :return:
        """
        # 判断结果是否与预期相符
        # try:
        #     assert self.result == self.data['Expect']
        #     Log().info("测试通过")
        # except AssertionError as e:  # 抛出断言错误异常
        #     Log().error("断言结果为False~{0}".format(e))
        #     raise e
        # finally:
        #     print("返回结果:".center(66, "-") + "\n", json.dumps(self.result, ensure_ascii=False, indent=2))

        re = self.check_json.check_json(self.data['Expect'], self.result)

        try:
            assert re == 'success'

            Log().info("测试通过")
        except AssertionError as e:  # 抛出断言错误异常
            Log().info(str(re))
            Log().error("断言结果为False~{0}".format(e))
            raise e
        finally:
            print("返回结果:".center(66, "-") + "\n",
                  json.dumps(self.result, ensure_ascii=False, indent=2))

    def dbcheck(self):
        """
        数据库校验
        :return: True or False
        """
        pass

    def teardown(self):
        # 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格。
        Log().info("END".center(66, '*'))
        print('\n')
Exemplo n.º 15
0
 def setup(self):
     Log().info("START".center(66, '*'))
     self.http = HttpRquest()
     self.check_json = Check()
Exemplo n.º 16
0
class SetupApi(object):

    http = HttpRquest()
    test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url)
    test_data_f = read_yaml(read_path.test_common,'setupApi.yaml',config.url_f)
    test_data_c = read_yaml(read_path.test_common,'setupApi.yaml',config.url_c)
    test_data_u = read_yaml(read_path.test_common,'setupApi.yaml',config.url_u)

    #用户登录功能
    def login_v(self,user = None,pwd = None):
        """
        V端用户的登录
        :param user: 用户账号
        :param pwd:  用户密码
        :return: token 登录成功的token
        """
        if user != None and pwd != None:
            self.test_data[0]['param']['mobile'] = user
            self.test_data[0]['param']['password'] = pwd
        try:
            response = self.http.http_request(self.test_data[0]['method'], self.test_data[0]['url'],self.test_data[0]['param'],
                                    self.test_data[0]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[0]['url'])

            self.result = response.json()


            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    res = {}
                    res['access_token'] = self.result['result']['access_token']
                    res['uuid'] = self.result['result']['uuid']
                    return res

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e


    def login_f(self,user = None,pwd = None):
        """
        f端用户的登录
        :param user: 用户账号
        :param pwd:  用户密码
        :return: token 登录成功的token uuid
        """
        if user != None and pwd != None:
            self.test_data[1]['param']['mobile'] = user
            self.test_data[1]['param']['password'] = pwd
        try:
            response = self.http.http_request(self.test_data[1]['method'], self.test_data[1]['url'],self.test_data[1]['param'],
                                    self.test_data[1]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[1]['url'])

            self.result = response.json()


            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():
                    res = {}
                    res['access_token'] = self.result['result']['access_token']
                    res['uuid'] =  self.result['result']['uuid']
                    return res

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e

    def login_c(self,user = None,pwd = None):
        """
        C端用户的登录
        :param user: 用户账号
        :param pwd:  用户密码
        :return: token 登录成功的token
        """
        if user != None and pwd != None:
            self.test_data[2]['param']['mobile'] = user
            self.test_data[2]['param']['password'] = pwd
        try:
            response = self.http.http_request(self.test_data[2]['method'], self.test_data[2]['url'],self.test_data[2]['param'],
                                    self.test_data[2]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[2]['url'])

            self.result = response.json()


            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    res = {}
                    res['access_token'] = self.result['result']['access_token']
                    res['uuid'] = self.result['result']['uuid']
                    return res

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e

    def login_wxappF(self,user = None,pwd = None):
        """
        F端小程序用户的登录
        :param user: 用户账号
        :param pwd:  用户密码
        :return: token 登录成功的token
        """
        if user != None and pwd != None:
            self.test_data[8]['param']['mobile'] = user
            self.test_data[8]['param']['password'] = pwd
        try:
            response = self.http.http_request(self.test_data[8]['method'], self.test_data[8]['url'], self.test_data[8]['param'],
                                    self.test_data[8]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[8]['url'])

            self.result = response.json()


            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    return self.result['result']['access_token']

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e

    def login_c_jianxin(self,user = None,pwd = None):
        """
        C端用户的登录
        :param user: 用户账号
        :param pwd:  用户密码
        :return: token 登录成功的token
        """
        if user != None and pwd != None:
            self.test_data[9]['param']['mobile'] = user
            self.test_data[9]['param']['password'] = pwd
        try:
            response = self.http.http_request(self.test_data[9]['method'], self.test_data[9]['url'], self.test_data[9]['param'],
                                    self.test_data[9]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[9]['url'])

            self.result = response.json()


            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    return self.result['result']['access_token']

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e

    def dotest(self):
        """
        新增个CV用户
        :return:
        """
        test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url_u)

        mobile = update_yaml(read_path.commondata, 'data.yaml', 'mobile')
        test_data[4]['param']['mobile'] = mobile

        # 注册用户
        register_response = requests.request("POST", test_data[4]['url'], json=test_data[4]['param'],
                                             headers=test_data[4]['header'])
        print(register_response.json())

        login_response = self.login_v(mobile,"e10adc3949ba59abbe56e057f20f883e")
        print(login_response)
        self.test_data[5]['header']['access_token'] = login_response
        self.test_data[5]['param']['mobile'] = mobile
        adduser_response = requests.request("POST", self.test_data[5]['url'], json=self.test_data[5]['param'],
                                            headers=self.test_data[5]['header'])

    def createFUser(self):
        """
         创建一个已认证的F用户
        :return:
        """
        test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url_u)

        mobile = update_yaml(read_path.commondata, 'data.yaml', 'mobile')
        test_data[10]['param']['mobile'] = mobile
        # 注册用户
        register_response = requests.request("POST", test_data[10]['url'], json=test_data[10]['param'],
                                             headers=test_data[10]['header'])

        # 登录
        access_token = self.login_f(user=mobile,pwd='e10adc3949ba59abbe56e057f20f883e')

        #添加F用户
        test_data[15]['header']['access_token'] = access_token['access_token']
        test_data[15]['param']['mobile'] = mobile
        e = requests.request("POST", test_data[15]['url'], json=test_data[15]['param'],
                                             headers=test_data[15]['header'])

        # 添加店铺昵称
        test_data[11]['header']['access_token'] = access_token['access_token']
        e = requests.request("POST", test_data[11]['url'], json=test_data[11]['param'],
                         headers=test_data[11]['header'])

        #添加店铺名称
        test_data[12]['header']['access_token'] = access_token['access_token']
        e = requests.request("POST", test_data[12]['url'], json=test_data[12]['param'],
                         headers=test_data[12]['header'])

        #添加客服信息
        test_data[13]['header']['access_token'] = access_token['access_token']
        e = requests.request("POST", test_data[13]['url'], json=test_data[13]['param'],
                         headers=test_data[13]['header'])

        #打款认证
        test_data[16]['header']['access_token'] = access_token['access_token']
        import time
        test_data[16]['param']['busi_no'] = int(round(time.time() * 1000))
        _result = requests.request("post", test_data[16]['url'], json=test_data[16]['param'],
                                   headers=test_data[16]['header'])
        uuid = _result.json()['result']['uuid']

        #获取认证金额
        test_data[14]['header']['access_token'] = access_token['access_token']
        _result = requests.request("get", test_data[14]['url'], json=test_data[14]['param'],
                         headers=test_data[14]['header'])
        pay_amount = _result.json()['result']['pay_amount']


        #金额认证
        test_data[17]['header']['access_token'] = access_token['access_token']
        test_data[17]['param']['tran_amount'] = pay_amount
        _result = requests.request("post", test_data[17]['url'], json=test_data[17]['param'],
                                   headers=test_data[17]['header'])
        con = Connectmysql("intbee")
        sql = 'UPDATE intbee_manufacture_authenticate set is_payment=1 WHERE uuid="%s";'%uuid
        con.update(sql)

        #给F账户充值金额
        sql = 'UPDATE intbee_bank_corporate set available_money=1000 WHERE uuid="%s";'%uuid
        count = con.update(sql)
        print(count)

        # #同时成为V用户
        test_data[18]['header']['access_token'] = access_token['access_token']
        test_data[18]['param']['mobile'] = mobile
        _result = requests.request("get", test_data[18]['url'], json=test_data[18]['param'],
                                   headers=test_data[18]['header'])

        #成为c用户
        test_data[19]['header']['access_token'] = access_token['access_token']
        test_data[19]['param']['mobile'] = mobile
        _result = requests.request("get", test_data[19]['url'], json=test_data[19]['param'],
                                   headers=test_data[19]['header'])

        res = {}
        res['mobile'] = mobile
        res['uuid'] = uuid
        res['access_token'] = access_token['access_token']
        return res


    def createCUser(self):
        """
            创建一个已认证的C用户
           :return:
        """
        test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url_u)

        mobile = update_yaml(read_path.commondata, 'data.yaml', 'mobile')
        test_data[10]['param']['mobile'] = mobile

        # 注册用户
        requests.request("POST", test_data[10]['url'], json=test_data[10]['param'],
                                             headers=test_data[10]['header'])
        # 登录
        re = self.login_f(user=mobile, pwd='e10adc3949ba59abbe56e057f20f883e')

        #同时成为C用户
        test_data[19]['header']['access_token'] = re['access_token']
        test_data[19]['param']['mobile'] = mobile
        _result = requests.request("get", test_data[19]['url'], json=test_data[19]['param'],
                                   headers=test_data[19]['header'])
        res = {}
        res['mobile'] = mobile
        res['uuid'] =re['uuid']
        print(test_data[10])
        return res


    def createVUser(self):
        """
            创建一个已认证的V用户
           :return:
        """
        test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url_u)

        mobile = update_yaml(read_path.commondata, 'data.yaml', 'mobile')
        # test_data[4]['param']['mobile'] = mobile
        #
        # # 注册用户
        # requests.request("POST", test_data[4]['url'], json=test_data[4]['param'],
        #                                      headers=test_data[4]['header'])

        test_data[10]['param']['mobile'] = mobile

        # 注册用户
        requests.request("POST", test_data[10]['url'], json=test_data[10]['param'],
                         headers=test_data[10]['header'])

        # 登录
        re = self.login_f(user=mobile, pwd='e10adc3949ba59abbe56e057f20f883e')

        # 成为V用户
        test_data[18]['header']['access_token'] = re['access_token']
        test_data[18]['param']['mobile'] = mobile
        _result = requests.request("get", test_data[18]['url'], json=test_data[18]['param'],
                                   headers=test_data[18]['header'])

        #绑定自媒体
        test_data[20]['header']['access_token'] = re['access_token']
        _result = requests.request("post", test_data[20]['url'], json=test_data[20]['param'],
                                   headers=test_data[20]['header'])

        print(_result.json())
        print(test_data[20])

        res = {}
        res['mobile'] = mobile
        res['uuid'] =re['uuid']
        print(test_data[10])
        return res

    def getpassword(self,user,flag):
        """
        获取验证码
        :param user:  手机号
        :param flag:  验证码类型
        :return:
        """
        self.test_data_u[3]['param']['mobile'] = user

        self.test_data_u[3]['param']['flag'] = flag
        response = requests.request(self.test_data_u[3]['method'], self.test_data_u[3]['url'],
                                    json=self.test_data_u[3]['param'], headers=self.test_data_u[3]['header'])
        result = response.json()
        return result['result']


    def fenxiao(self, app_key=None, app_secret=None):
        if app_secret != None and app_key != None:
            self.test_data[6]['param']['app_key'] = app_key
            self.test_data[6]['param']['app_secret'] = app_secret
        try:
            response = self.http.http_request(self.test_data[6]['method'], self.test_data[6]['url'],
                                              self.test_data[6]['param'],
                                              self.test_data[6]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[6]['url'])

            self.result = response.json()

            Log().info("登录结果{0}".format(self.result))


            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    return self.result['result']['access_token']

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e

    def fenxiaofront(self, mobile=None, password=None):
        if mobile != None and password != None:
            self.test_data[7]['param']['mobile'] = mobile
            self.test_data[7]['param']['password'] = password
        try:
            response = self.http.http_request(self.test_data[7]['method'], self.test_data[7]['url'],
                                              self.test_data[7]['param'],
                                              self.test_data[7]['header'], cookies=None)

            Log().info("登录状态码{0}".format(response))
            Log().info(self.test_data[7]['url'])

            self.result = response.json()

            Log().info("登录结果{0}".format(self.result))

            if 'result' in self.result.keys():

                if 'access_token' in self.result['result'].keys():

                    return self.result['result']['access_token']

                else:
                    Log().error("登录失败啦")
            else:
                Log().error("登录失败啦")
        except Exception as e:
            Log().error("登录出错啦")
            raise e


    def user_register(self):
        test_data = read_yaml(read_path.test_common, 'setupApi.yaml', config.url_u)

        mobile = update_yaml(read_path.commondata, 'data.yaml', 'mobile')
        test_data[10]['param']['mobile'] = mobile

        # 注册用户
        register_response = requests.request("POST", test_data[10]['url'], json=test_data[10]['param'],
                                             headers=test_data[10]['header'])
        return mobile