def run_dependent(self, case_name):

        # run_method = RunMethod()
        print('yilai: %s' % case_name)
        row_num = self.opera_excel.get_row_num(case_name)
        print('hangshu: %s' % row_num)
        request_data = self.data.get_data_for_json(row_num)
        header = self.data.is_header(row_num)
        method = self.data.get_request_method(row_num)
        url = self.data.get_request_url(row_num)
        case_depend = self.data.is_depend(row_num)
        print('yilaicase: %s' % case_depend)

        data_depend = self.data.get_depend_key(row_num)
        field_depend = self.data.get_depend_field(row_num)

        depend_row_num = self.opera_excel.get_row_num(case_depend)

        if case_depend != None:
            self.depend_data = DependdentData(case_depend)
            # 获取的依赖响应数据
            depend_response_data = self.depend_data.get_data_for_key(
                depend_row_num)
            # 获取依赖的key
            depend_key = self.data.get_depend_field(depend_row_num)
            request_data[depend_key] = depend_response_data
        if header == 'write':
            res = self.run_method.run_main(method, url, request_data,
                                           self.headers)
            response = self.run_method.run_request(method, url, request_data,
                                                   self.headers)
            print('请求url:%s' % response.url)
            print('请求参数:%s' % request_data)
            # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
            print(res)
            # op_header = OperationHeader(res)
            op_header = OperationHeader()
            # op_header.write_cookie()
            op_header.write_header()

        elif header == 'yes':
            op_json = OperetionJson('../dataconfig/cookie.json')
            header_json = OperetionJson('../dataconfig/header.json')

            amsession = header_json.get_data('AMSESSION')
            token = header_json.get_data('LtpaToken2')
            content = header_json.get_data('Content-Type')
            # cookie = op_json.get_data('apsid')
            # cookies = {
            #     'apsid':cookie
            # }
            headers = {
                'AMSESSION': amsession,
                'LtpaToken2': token,
                'Content-Type': content
            }

            # res = self.run_method.run_main(method,url,request_data,cookies)
            res = self.run_method.run_main(method, url, request_data, headers)
            response = self.run_method.run_request(method, url, request_data,
                                                   headers)
            print('请求url:%s' % response.url)
            print('请求参数:%s' % request_data)
            # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
            print(res)
        else:
            res = self.run_method.run_main(method, url, request_data)
            response = self.run_method.run_request(method, url, request_data)
            print('请求url:%s' % response.url)
            print('请求参数:%s' % request_data)
            # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
            print(res)

        # res = run_method.run_main(method,url,request_data)
        return json.loads(res)
    def go_on_run(self):
        res = None
        pass_count = []
        fail_count = []
        #10  0,1,2,3
        rows_count = self.data.get_case_lines()
        print('rows_count: %d' % rows_count)
        for i in range(1, rows_count):
            is_run = self.data.get_is_run(i)
            if is_run:
                url = self.data.get_request_url(i)
                method = self.data.get_request_method(i)
                request_data = self.data.get_data_for_json(i)
                # expect = self.data.get_expcet_data_for_mysql(i)
                expect = self.data.get_expcet_data(i)
                header = self.data.is_header(i)
                depend_case = self.data.is_depend(i)
                if depend_case != None:
                    self.depend_data = DependdentData(depend_case)
                    #获取的依赖响应数据
                    depend_response_data = self.depend_data.get_data_for_key(i)
                    #获取依赖的key
                    depend_key = self.data.get_depend_field(i)
                    print('依赖关键字:%s' % depend_key)
                    print(depend_response_data)
                    print('依赖值类型:%s' % type(depend_response_data))
                    print('请求数据:%s' % request_data)
                    print('请求数据类型:%s' % type(request_data))

                    if request_data != None:
                        request_data1 = json.loads(request_data)
                        request_data1[depend_key] = depend_response_data
                        request_data = json.dumps(request_data1)
                        print(request_data)
                    else:
                        if method == 'Post':
                            request_data1 = {}
                            request_data1[depend_key] = depend_response_data
                            request_data = json.dumps(request_data1)
                            print(request_data)
                        else:
                            request_data1 = {}
                            request_data1[depend_key] = depend_response_data
                            request_data = request_data1
                            print(request_data)

                if header == 'write':
                    res = self.run_method.run_main(method, url, request_data,
                                                   self.headers)
                    response = self.run_method.run_request(
                        method, url, request_data, self.headers)
                    print('请求url:%s' % response.url)
                    print('请求参数:%s' % request_data)
                    print('请求参数类型:%s' % type(request_data))
                    print('返回状态码:%s' % response.status_code)
                    # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
                    print(res)
                    # op_header = OperationHeader(res)
                    op_header = OperationHeader()
                    # op_header.write_cookie()
                    op_header.write_header()

                elif header == 'yes':
                    op_json = OperetionJson('../dataconfig/cookie.json')
                    header_json = OperetionJson('../dataconfig/header.json')

                    amsession = header_json.get_data('AMSESSION')
                    token = header_json.get_data('LtpaToken2')
                    content = header_json.get_data('Content-Type')
                    # cookie = op_json.get_data('apsid')
                    # cookies = {
                    #     'apsid':cookie
                    # }
                    headers = {
                        'AMSESSION': amsession,
                        'LtpaToken2': token,
                        'Content-Type': content
                    }

                    # res = self.run_method.run_main(method,url,request_data,cookies)
                    res = self.run_method.run_main(method, url, request_data,
                                                   headers)

                    response = self.run_method.run_request(
                        method, url, request_data, headers)
                    print('请求url:%s' % response.url)

                    print('请求参数:%s' % request_data)
                    print('请求参数类型:%s' % type(request_data))
                    print('返回状态码:%s' % response.status_code)
                    # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
                    print(res)
                else:
                    res = self.run_method.run_main(method, url, request_data)

                    response = self.run_method.run_request(
                        method, url, request_data)
                    print('请求url:%s' % response.url)

                    print('请求参数:%s' % request_data)
                    print('请求参数类型:%s' % type(request_data))
                    print('返回状态码:%s' % response.status_code)
                    # print(json.dumps(response.json(), ensure_ascii=False, sort_keys=True, indent=2))
                    print(res)

                if self.com_util.is_equal_dict(expect, res) == True:
                    # self.data.write_result(i,'pass')
                    pass_count.append(i)
                    print('expect result type is: %s' % type(expect))
                    print('actual result type is: %s' % type(res))
                    print('pass test.......')
                else:
                    # self.data.write_result(i,res)
                    fail_count.append(i)
                    print('expect result type is: %s' % type(expect))
                    print('actual result type is: %s' % type(res))
                    print('fail test.......')
        # self.send_mai.send_main(pass_count,fail_count)
        print(pass_count)
        print(fail_count)
 def write_cookie(self):
     cookie = requests.utils.dict_from_cookiejar(self.get_cookie())
     op_json = OperetionJson()
     op_json.write_data(cookie)
 def write_header(self):
     # header = requests.utils.parse_dict_header()
     op_json = OperetionJson()
     op_json.write_header(self.get_header())
 def get_data_for_json(self,row):
     opera_json = OperetionJson()
     # request_data = opera_json.get_data(self.get_request_data(row))
     request_data = self.get_request_data(row)
     return request_data