Пример #1
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil("D:\project_selenium3\config\keyword.xls")
     case_lines = handle_excel.get_lines()  #获取case表格中的行数
     if case_lines:
         for i in range(1, case_lines):  #跳过case表格中的第一行内容
             is_run = handle_excel.get_col_value(i, 3)  #获取是否执行列的值
             if is_run == 'yes':  #根据执行列是否为yes,如果是yes,则执行相应的case
                 except_result_method = handle_excel.get_col_value(
                     i, 7)  #预期结果方法值
                 except_result = handle_excel.get_col_value(i, 8)  #预期结果
                 method = handle_excel.get_col_value(i, 4)  #获取执行方法
                 send_value = handle_excel.get_col_value(i, 5)  #获取需要输入的数据
                 handle_value = handle_excel.get_col_value(i, 6)  #获取操作元素
                 self.run_method(method, send_value, handle_value)
                 if except_result != '':
                     except_value = self.get_except_result_value(
                         except_result)  #获取预期结果值
                     if except_value[0] == 'text':
                         result = self.run_method(except_result_method)
                         if except_value[1] in result:
                             handle_excel.write_value(i, 9, 'pass')
                         else:
                             handle_excel.write_value(i, 9, 'fail')
                     elif except_value[0] == 'element':
                         result = self.run_method(except_result_method,
                                                  except_value[1])
                         if result:
                             handle_excel.write_value(i, 9, 'pass')
                         else:
                             handle_excel.write_value(i, 9, 'fail')
                     else:
                         print("没有else")
                 else:
                     print("预期结果为空")
Пример #2
0
    def run_keyword_excel_cases(self):

        self.lk = LoginKeyword()
        self.excel_path = r'D:\pythonWork\autoTest\data\loginKeyWord.xls'
        handle_excel = ExcelUtil(self.excel_path)
        # 获取 excel 关键词测试用例的条数
        cases_numbers = handle_excel.get_lines()
        actual_case_numbers = int(cases_numbers) - 1
        print("注册页获取到的关键词测试的测试用例条数为:%d" % actual_case_numbers)

        # 循环行数遍历测试用例
        if cases_numbers:
            # 第 0 行是标题行不作为用例执行
            for i in range(1, cases_numbers):
                # 获取测试用例的名称
                testcase_name = handle_excel.get_col_value(i, 0)
                # 获取用例是否执行
                is_run = handle_excel.get_col_value(i, 3)
                if is_run == 'yes':
                    # 执行方法
                    keyword_method = handle_excel.get_col_value(i, 4)
                    # 输入数据
                    send_value = handle_excel.get_col_value(i, 5)
                    # 操作元素
                    operator_element = handle_excel.get_col_value(i, 6)
                    # 获得预期结果的方法
                    except_result_method = handle_excel.get_col_value(i, 7)
                    # 预期结果的值
                    except_result = handle_excel.get_col_value(i, 8)
                    # 实际结果
                    actual_result = handle_excel.get_col_value(i, 9)
                    # 反射:通过excel中的字符串执行python文件中的方法
                    self.run_keyword_method(keyword_method, operator_element, send_value)

                    if except_result != '':
                        except_value = self.get_except_result_value(except_result)
                        if except_value[0] == 'text':
                            result = self.run_keyword_method(except_result_method)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                                print('第 %s 条用例执行预期结果,用例名称是: [%s]' % (i, testcase_name))
                            else:
                                handle_excel.write_value(i, 'fail')
                                print('第 %s 条用例执行预期结果,用例名称是: [%s]' % (i, testcase_name))
                        elif except_value[0] == 'element':
                            result = self.run_keyword_method(except_result_method, except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                                print('第 %s 条用例执行预期结果,用例名称是: [%s]' % (i, testcase_name))
                            else:
                                handle_excel.write_value(i, 'fail')
                                print('第 %s 条用例执行预期结果,用例名称是: [%s]' % (i, testcase_name))
                        else:
                            print('没有else')


                    else:
                        print('第 %s 条用例不执行,用例名称是: [%s],无预期结果' % (i, testcase_name))
        else:
            print("略略略~,请检查你是否有写测试用例!")
Пример #3
0
 def  browse_photo_add_photo_path_sift_demo(self, photo_path, photo_name, screen_capture):
     # 点击浏览按钮
     self.click_photo_add_browse_btn()
     time.sleep(2)
     # 实例化图像匹配类
     IM = ImageMatchBySift()
     # 实例化控件操作类
     AE = ActionExe()
     # 读入数据
     ex = ExcelUtil(excel_path=r"D:\pythonWork\autoTest\data\picturedemo.xls")
     # 获取excel行数
     rows = ex.get_lines()
     # 循环获取excel模板图数据
     for row in range(0, rows):
         # 获取模板图
         function_photo = ex.get_col_value(row, 2)
         # 获取模板图处执行方法
         operate_method = ex.get_col_value(row, 3)
         # 截取当前页面
         im = ImageGrab.grab()
         # 保存截取页面到固定路径
         im.save(screen_capture)
         # 引入模板匹配模块
         operate_location = IM.image_match_by_sift(function_photo, screen_capture)
         operate_location_x = int(operate_location[0])
         operate_location_y = int(operate_location[1])
         if operate_location != None:
             # 鼠标定位到识别元素位置
             win32api.SetCursorPos([operate_location_x, operate_location_y])
             # 鼠标左击
             win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
             # 鼠标右击
             # win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)
             time.sleep(3)
             """if row == 0:
Пример #4
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel=ExcelUtil("F:\workspace\python\py\config\keyword.xls")
     #是否执行
     case_lines=handle_excel.get_lines()
     if case_lines:
         for i in range(1,case_lines):
             is_run=handle_excel.get_col_value(i,3)
             print(is_run)
             if is_run=='yes':
                 method=handle_excel.get_col_value(i, 4)
                 # print('meth====',method)
                 send_value=handle_excel.get_col_value(i, 5)
                 handle_value=handle_excel.get_col_value(i, 6)
                 except_result_method=handle_excel.get_col_value(i,7)
                 except_result = handle_excel.get_col_value(i, 8)
                 self.run_method(method,send_value,handle_value)
                 if except_result!='':
                     except_value=self.get_except_result_value(except_result)
                     if except_value[0]=='text':
                         result=self.run_method(except_result_method)
                         # print('result>>>>>>>',result)
                         # print(except_value[1])
                         if except_value[1] in result:
                             handle_excel.wirte_value(i,'pass')
                         else:
                             handle_excel.wirte_value(i,'fail')
                     elif except_value[0]=='element':
                         print('except_value=====',except_value[1])
                         result=self.run_method(except_result_method,except_value[1])
                         print('result====',result)
                         if result:
                             handle_excel.wirte_value(i,'pass')
                         else:
                             handle_excel.wirte_value(i,'fail')
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil(
            r"D:\Pycharm\pythonProject\rtxProject\config\loginkeyword.xls")
        case_lines = handle_excel.get_lines()

        if case_lines:
            for i in range(1, case_lines):
                is_run = handle_excel.get_cell_data(i, 3)
                if is_run == "yes":
                    method = handle_excel.get_cell_data(i, 4)
                    send_value = handle_excel.get_cell_data(i, 5)
                    handle_value = handle_excel.get_cell_data(i, 6)
                    expect_result_method = handle_excel.get_cell_data(i, 7)
                    expect_result = handle_excel.get_cell_data(i, 8)
                    self.run_method(method, send_value, handle_value)

                    if expect_result != "":
                        expect_value = self.get_expect_result_value(
                            expect_result)
                        if expect_value[0] == "text":
                            result = self.run_method(expect_result_method)
                            if expect_value[1] in result:
                                handle_excel.write_value(i, "pass")
                            else:
                                handle_excel.write_value(i, "fail")
                        else:
                            print("无")
                    else:
                        print("case预期结果为空")
Пример #6
0
 def run_main(self):
     self.action_method = ActionMethod('firefox')
     handle_excel = ExcelUtil('F:/Python/5itest_po_3/config/keywords-1.xls')
     case_lines = handle_excel.get_lines()
     for i in range(1, case_lines):
         is_run = handle_excel.get_value(i, 3)
         if is_run == 'yes':
             method = handle_excel.get_value(i, 4)
             send_value = handle_excel.get_value(i, 5)
             get_element = handle_excel.get_value(i, 6)
             except_result_method = handle_excel.get_value(i, 7)
             except_result = handle_excel.get_value(i, 8)
             self.run_method(method, get_element, send_value)
             if except_result:
                 except_value = self.get_except_result_value(except_result)
                 if except_value[0] == 'text':
                     result = self.run_method(except_result_method)
                     if except_value[1] in result:
                         handle_excel.write_value(i, 'pass')
                     else:
                         handle_excel.write_value(i, 'fail')
                 elif except_value[0] == 'element':
                     result = self.run_method(except_result_method,
                                              except_value[1])
                     if result:
                         handle_excel.write_value(i, 'pass')
                     else:
                         handle_excel.write_value(i, 'fail')
         else:
             pass
Пример #7
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil('E:\\Teacher\\Imooc\\SeleniumPython\\config\\keyword.xls')
     case_lines = handle_excel.get_lines()
     if case_lines:
         for i in range(1,case_lines):
             is_run = handle_excel.get_col_value(i,3)    # 是否执行
             if is_run == 'yes':
                 except_result_method = handle_excel.get_col_value(i,7)   # 预期结果
                 except_result = handle_excel.get_col_value(i,8)    # 实际结果
                 method = handle_excel.get_col_value(i,4)   # 执行方法
                 send_value = handle_excel.get_col_value(i,5)   # 输入的数据
                 handle_value = handle_excel.get_col_value(i,6)   # 操作元素
                 self.run_method(method,send_value,handle_value)
                 if except_result != '':
                     except_value = self.get_except_result_value(except_result)
                     if except_value[0] == 'text':
                         result = self.run_method(except_result_method)
                         if except_value[1] in result:
                             handle_excel.write_value(i,'pass')
                         else:
                             handle_excel.write_value(i,'fail')
                     elif except_value[0] == 'element':
                         result = self.run_method(except_result_method,except_value[1])
                         if result:
                             handle_excel.write_value(i,'pass')
                         else:
                             handle_excel.write_value(i,'fail')
                     else:
                         print("没有else")
                 else:
                     print('预期结果为空')
Пример #8
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil()
        case_lines = handle_excel.get_lines()
        if case_lines:
            for i in range(1, case_lines):
                is_run = handle_excel.get_col_value(i, 3)
                if is_run == 'yes':
                    method = handle_excel.get_col_value(i, 4)
                    send_value = handle_excel.get_col_value(i, 5)
                    handle_value = handle_excel.get_col_value(i, 6)
                    except_result_method = handle_excel.get_col_value(i, 7)
                    except_result = handle_excel.get_col_value(i, 8)

                    self.run_method(method, send_value, handle_value)
                    if except_result != '':
                        except_value = self.get_expect_result_value(
                            except_result)
                        if except_value[0] == 'text':
                            result = self.run_method(except_result_method)
                            if except_value[1] in result:
                                handle_excel.write_val(i, 'pass')
                            else:
                                handle_excel.write_val(i, 'fail')
                        elif except_value[0] == 'element':
                            self.run_method(except_result_method,
                                            except_value[1])
                            if result:
                                handle_excel.write_val(i, 'pass')
                            else:
                                handle_excel.write_val(i, 'fail')

                    else:
                        print('预期结果为空')
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil('D:/Imooc_project/config/keyword.xls')
     # get 行数
     case_lines = handle_excel.get_lines()
     if case_lines:
         # for循环,遍历每一行
         for i in range(1, case_lines):
             col_value = handle_excel.get_col_value(i, 3)
             # if 是否执行
             if col_value == 'yes':
                 method = handle_excel.get_col_value(i, 4)  # 操作方法
                 send_value = handle_excel.get_col_value(i, 5)  # 输入值
                 handle_value = handle_excel.get_col_value(i, 6)  # 操作元素
                 except_result_method = handle_excel.get_col_value(
                     i, 7)  # 获取预期结果的方法
                 except_result = handle_excel.get_col_value(i,
                                                            8)  # 获取预期结果的值
                 self.run_method(method, send_value, handle_value)
                 if except_result != '':
                     except_value = self.get_except_result_value(
                         except_result)  # 获取预期结果的值(列表)
                     if except_value[0] == 'text':
                         result = self.run_method(except_result_method)
                         if except_value[1] in result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     elif except_value[0] == 'element':
                         result = self.run_method(except_result_method,
                                                  except_value[1])
                         if result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
Пример #10
0
 def run_main(self):
     file_path = os.path.join(os.getcwd() + '/config/keyword.xlsx')
     handle_excl = ExcelUtil(excl_path=file_path)
     case_lines = handle_excl.get_lines()
     if case_lines:
         for i in range(1, case_lines):
             is_run = handle_excl.get_col_value(i, 3)
             if is_run:
                 method = handle_excl.get_col_value(i, 4)
                 send_value = handle_excl.get_col_value(i, 5)
                 handle_value = handle_excl.get_col_value(i, 6)
                 self.run_method(method, send_value, handle_value)
Пример #11
0
    def run_main(self):
        #调用日志2
        logger.info("kaishi")
        #一般放在大teardown中
        log.close_handle()

        self.action_method = ActionMethod()
        #实例化对象
        handle_excel = ExcelUtil()
        #获取excel文件的行数
        case_lines = handle_excel.get_lines()
        #判断行数是否为空(也就是是否是有数据的文件)
        if case_lines:
            #取每一行的值,这里因为第一行是表头,所以不用取
            for i in range(1, case_lines):
                #取用例的可执行状态的值,这里默认是第三列
                is_run = handle_excel.get_col_value(i, 3)
                #根据值判断这个可执行状态
                if is_run == 'yes':
                    #取第4、5、6列,分别为方法名、输入的值、操作的对象
                    method = handle_excel.get_col_value(i, 4)
                    send_value = handle_excel.get_col_value(i, 5)
                    handle_value = handle_excel.get_col_value(i, 6)

                    #取第7、8列,分别为获取预期结果的方法、预期结果的值
                    except_method = handle_excel.get_col_value(i, 7)
                    except_result = handle_excel.get_col_value(i, 8)

                    #执行方法
                    self.run_method(method, send_value, handle_value)

                    #实际结果与预期结果进行对比,并将对比后的结果写到实际结果中
                    #首先判断预期结果的值单元格是否有数据
                    if except_result != '':
                        #如果有数据,则通过(获取结果的值)方法获取到单元格内的数据(list)
                        except_value = self.get_except_value(except_result)
                        #判断列表的第一个数,也就是等号左边的数据
                        if except_value[0] == 'text':
                            #如果为test则直接调用方法获取值
                            result = self.run_method(except_method)
                            #将获取的实际的值与预期的等号右边的数据比较
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_result,
                                                     except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
Пример #12
0
    def run_main(self):
        self.action_metnod = ActionMethod()
        handle_excel = ExcelUtil(
            r"C:\Users\Administrator\PycharmProjects\AuToTest4\moco\case\key_word.xls"
        )
        # 拿到行数
        case_lines = handle_excel.get_lines()
        self.log = UserLog()
        self.logger = self.log.get_log()
        # 循环行数,执行每一行case
        if case_lines:
            for i in range(1, case_lines):
                is_run = handle_excel.get_col_value(i, 3)
                # print(is_run)
                # 是否执行
                if is_run == 'yes':
                    # 拿到执行方法
                    method = handle_excel.get_col_value(i, 4)
                    # 拿到输入数据
                    send_value = handle_excel.get_col_value(i, 5)
                    # 拿到操作元素
                    handle_value = handle_excel.get_col_value(i, 6)
                    # 获取预期结果的方法
                    except_result_method = handle_excel.get_col_value(i, 7)
                    # 获取预期结果的值
                    except_result = handle_excel.get_col_value(i, 8)
                    self.run_method(method, send_value, handle_value)
                    # 判断预期结果是否为空
                    if except_result != '':
                        except_value = self.get_except_result_value(
                            except_result)
                        if except_value[0] == 'text':

                            result = self.run_method(except_result_method)
                            if except_value[1] in result:
                                self.logger.info("测试通过")
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_result_method,
                                                     except_value[1])
                            if result:
                                self.logger.info("测试通过")
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        else:
                            return None
Пример #13
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil(ex_path)
        # 行数を取得
        case_lines = handle_excel.get_lines()
        if case_lines:
            # 行数をループ、毎行のcaseを実行
            for i in range(1, case_lines):
                is_run = handle_excel.get_col_value(i, 3)
                # 実行するかどうか
                if is_run == 'yes':
                    # 実行方法を取得
                    method = handle_excel.get_col_value(i, 4)
                    # 入力データを取得
                    send_value = handle_excel.get_col_value(i, 5)
                    # 操作elementを取得
                    handle_value = handle_excel.get_col_value(i, 6)
                    # 予想結果を取得
                    except_result_method = handle_excel.get_col_value(i, 7)
                    # 予想結果の値
                    except_result = handle_excel.get_col_value(i, 8)
                    # except_result_method と except_resultは '' である可能性はある

                    #if send_value:
                    self.run_method(method, send_value, handle_value)
                    # もし予想結果の値が存在すれば
                    if except_result != '':
                        except_value = self.get_except_result_value(
                            except_result)
                        # もし予想結果のタイプはtext
                        if except_value[0] == 'text':
                            result = self.run_method(except_result_method)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        # もし予想結果はelementであれば
                        elif except_value[0] == 'element':
                            result = self.run_method(except_result_method,
                                                     except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        else:
                            print("no-else")
                    else:
                        print('予想結果ありません')
Пример #14
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil("E:/SELENIUMPYTHON/config/keyword.xls")
     case_line = handle_excel.get_lines()
     if case_line:
         for i in range(1, case_line):
             is_run = handle_excel.get_col_value(i, 3)
             print("is_run", is_run)
             if is_run == 'yes':
                 method = handle_excel.get_col_value(i, 4)
                 print("method", method)
                 send_value = handle_excel.get_col_value(i, 5)
                 print("send_value", send_value)
                 hand_value = handle_excel.get_col_value(i, 6)
                 print("hand_value", hand_value)
                 except_result_method = handle_excel.get_col_value(i, 7)
                 print("except_result_method", except_result_method)
                 except_result = handle_excel.get_col_value(i, 8)
                 print("except_result", except_result)
                 #''而不是None
                 #if send_value:
                 self.run_method(method, send_value, hand_value)
                 if except_result != '':
                     except_value = self.get_except_result_value(
                         except_result)
                     print("except_value", except_value)
                     if except_value[0] == 'text':
                         result = self.run_method(except_result_method)
                         print("result", result)
                         if except_value[1] in result:
                             print("1")
                             handle_excel.write_value(i, 'pass')
                             print('3')
                         else:
                             print("2")
                             handle_excel.write_value(i, 'fail')
                     elif except_value[0] == 'element':
                         result = self.run_method(except_result_method,
                                                  except_value[1])
                         if result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     else:
                         print("没有else")
                 else:
                     print("预期结果为空")
Пример #15
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil(r"F:\selenium_test\config\keyword.xls")
        #拿到行数
        case_lines = handle_excel.get_lines()
        #循环行数,去执行每一行的case
        if case_lines:
            for i in range(1, case_lines):
                #handle_excel.write_value(i,9,'test')
                #continue
                is_run = handle_excel.get_col_value(i, 3)
                #是否执行
                if is_run == 'yes':
                    #拿到执行方法
                    method = handle_excel.get_col_value(i, 4)
                    #拿到输入的数据
                    send_value = handle_excel.get_col_value(i, 5)
                    #拿到操作元素
                    handle_value = handle_excel.get_col_value(i, 6)
                    #拿到预期结果的方法
                    except_result_method = handle_excel.get_col_value(i, 7)
                    #拿到预期结果值
                    except_result = handle_excel.get_col_value(i, 8)
                    if except_result != '':
                        except_value = self.get_except_result_value(
                            except_result)
                        if except_value[0] == 'text':
                            result = self.run_method(except_result_method)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 9, 'pass')
                            else:
                                handle_excel.write_value(i, 9, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_result_method,
                                                     except_value[1])

                            if result:
                                handle_excel.write_value(i, 9, 'pass')
                            else:
                                handle_excel.write_value(i, 9, 'fail')
                        else:
                            print('没有else')
                    else:
                        print('预期结果为空')
                    #开始运行啦
                    self.run_method(method, send_value, handle_value)
Пример #16
0
    def run_main(self):  #运行的主入口
        self.action_method = ActionMethod()  #实例化
        handle_excel = ExcelUtil(r"D:\pythonCode\congif\keyword.xls")
        case_lines = handle_excel.get_lines()  #所有行数
        if case_lines:
            for i in range(1, case_lines):  #不能从零开始   因为那一行没有数据 就是很简答的列名
                # handle_excel.write_value(i,'test')
                # continue
                is_run = handle_excel.get_col_value(i, 3)  #获取数据  单元格的数据 传行号和列号
                if is_run == "yes":  #如果是yes就执行   拿下面的数据
                    method = handle_excel.get_col_value(i, 4)  #拿到这一行的数据  执行方法
                    print(method)
                    send_value = handle_excel.get_col_value(i, 5)  #拿到输入数据
                    print(send_value)
                    handle_value = handle_excel.get_col_value(i, 6)  #拿到操作数据
                    except_rusult_method = handle_excel.get_col_value(i, 7)
                    except_rusult = handle_excel.get_col_value(
                        i, 8)  #可能这个数据是空的   要经过''判断而不是None判断

                    print(handle_value)
                    #if send_value:
                    self.run_method(method, send_value,
                                    handle_value)  #思路 low代码
                    if except_rusult != '':  #不等于空的时候先获取他的值
                        except_value = self.get_except_result_value(
                            except_rusult)
                        if except_value[0] == 'text':
                            print('12345678' + except_rusult_method)
                            print("<------>", except_rusult_method)
                            result = self.run_method(except_rusult_method)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_rusult_method,
                                                     except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        else:
                            print("没有else")
                    else:
                        print("预期结果为空")
Пример #17
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil(
            '/Users/pmy/Downloads/selenium code/config/keyword.xls')

        #步骤:拿到行数 -> 循环行数,去执行每一条case -> 是否执行 -> 拿到执行方法、操作值、输入数据
        #     -> 是否有输入数据 ->(有)执行方法(输入数据,操作元素)、(无)执行方法(操作元素)

        case_lines = handle_excel.get_lines()
        if case_lines:  #case_lines不为空
            for i in range(1, case_lines):  #从第1行开始
                is_run = handle_excel.get_col_value(i, 3)  #传入行号和列号
                if is_run == 'yes':
                    methond = handle_excel.get_col_value(i, 4)
                    send_value = handle_excel.get_col_value(i, 5)
                    handle_value = handle_excel.get_col_value(i, 6)
                    #获取预期结果方法
                    except_result_method = handle_excel.get_col_value(i, 7)
                    except_result = handle_excel.get_col_value(i, 8)

                    #''而不是None
                    self.run_method(methond, send_value, handle_value)

                    if except_result != '':
                        except_value = self.get_except_result_value(
                            except_result)
                        if except_value[0] == 'text':
                            result = self.run_method(except_result_method)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_result_method,
                                                     except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        else:
                            print("没有else")
                    else:
                        print("kong")
Пример #18
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil(
         "C:\\Users\\Akien\\Desktop\\测试练习笔记\\自动化\\charpter2\\config\\keyword.xls"
     )
     case_lines = handle_excel.get_lines()
     if case_lines:
         for i in range(1, case_lines):
             is_run = handle_excel.get_col_value(i, 3)
             if is_run == "yes":
                 method = handle_excel.get_col_value(i, 4)
                 send_value = handle_excel.get_col_value(i, 5)
                 handle_value = handle_excel.get_col_value(i, 6)
                 except_result_method = handle_excel.get_col_value(i, 7)
                 except_result_value = handle_excel.get_col_value(i, 8)
                 self.run_method(method, send_value, handle_value)
                 if except_result_value != "":
                     except_value = self.get_except_result_value(
                         except_result_value)
                     if except_value[0] == 'text':
                         result_value = self.run_method(
                             except_result_method)
                         print(result_value)
                         print(except_value[1])
                         if except_value[1] in result_value:
                             handle_excel.write_value(i, "pass")
                             print("pass")
                         else:
                             handle_excel.write_value(i, 'fail')
                             print("fail")
                     elif except_value[0] == "element":
                         result_value = self.run_method(
                             except_result_method, except_value[1])
                         if result_value:
                             handle_excel.write_value(i, 'pass')
                             print("pass")
                         else:
                             handle_excel.write_value(i, 'fail')
                             print("fail")
                     else:
                         print("没有else")
                 else:
                     print("预期结果为空")
Пример #19
0
    def run_main(self):
        self.action_method = ActionMethod()
        file_path = os.path.join(os.getcwd()+'/config/keyword.xlsx')
        handle_excl = ExcelUtil(excl_path = file_path)
        # 拿到行数
        case_lines = handle_excl.get_lines()
        if case_lines:
            # 循环行数,执行每一行的case
            for i in range(1, case_lines):
                # 是否执行
                is_run = handle_excl.get_col_value(i, 3)
                if is_run:
                    # 拿到执行方法
                    method = handle_excl.get_col_value(i, 4)
                    # 输入数据
                    send_value = handle_excl.get_col_value(i, 5)
                    # 操作元素
                    handle_value = handle_excl.get_col_value(i, 6) 
                    # 预期结果
                    except_method = handle_excl.get_col_value(i, 7)
                    # 预期结果值
                    except_result = handle_excl.get_col_value(i, 8)
                    self.run_method(method, send_value, handle_value)
                    if except_result != '':
                        except_value = self.get_except_value(except_result)
                        if except_value[0] == 'text':
                            print('text的except_method------>', except_method)
                            result = self.run_method(except_method)
                            print('action_method中运行的方法名:--------->', getattr(self.action_method, except_method))
                            print('text result------->', result)
                            if except_value[1] in result:
                                handle_excl.write_value(i, 9, 'pass')
                            else:
                                handle_excl.write_value(i, 9, 'fail')
                        elif except_value[0] == 'element':
                            result = self.run_method(except_method, except_value[1])
                            print('element result------->', result)

                            if result:
                                handle_excl.write_value(i, 9, 'pass')
                            else:
                                handle_excl.write_value(i, 9, 'fail')
Пример #20
0
 def browse_photo_add_photo_path(self, photo_path, photo_name, screen_capture):
     # 点击浏览按钮
     self.click_photo_add_browse_btn()
     time.sleep(2)
     # 实例化图像匹配类
     IM = ImageMatch()
     # 实例化控件操作类
     AE = ActionExecute()
     # 截取当前页面
     im = ImageGrab.grab()
     # 保存截取页面到固定路径
     im.save(screen_capture)
     # 读入数据
     ex = ExcelUtil(excel_path=r"D:\pythonWork\autoTest\data\examinationPhotoImageMatchData.xls")
     # 获取excel行数
     rows = ex.get_lines()
     # 循环获取excel模板图数据
     for row in range(0, rows):
         # 获取模板图
         function_photo = ex.get_col_value(row, 2)
         # 获取模板图处执行方法
         operate_method = ex.get_col_value(row, 3)
         # 引入模板匹配模块
         operate_location = IM.ImageMatch(function_photo, screen_capture)
         operate_location_x = int(operate_location[0])
         operate_location_y = int(operate_location[1])
         if operate_location != None:
             # 鼠标定位到识别元素位置
             win32api.SetCursorPos([operate_location_x, operate_location_y])
             # 鼠标左击
             win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP | win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
             time.sleep(2)
             # 鼠标右击
             # win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP | win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)
             # 将内容复制到剪切板里
             AE.add_to_clipboard(photo_name)
             # 获取剪切板的内容
             # AE.get_clipboard()
             # 执行ctrl+v
             if row == 0:
                 AE.paste_method()
             time.sleep(3)
Пример #21
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil(
            'C:/Users/15927/Documents/SELENIUMPYTHONBASE/config/keyword.xls')
        case_lines = handle_excel.get_lines()
        if case_lines:
            for i in range(1, case_lines):
                is_run = handle_excel.get_col_value(i, 3)
                #print(is_run)
                if is_run == 'yes':
                    except_result_method = handle_excel.get_col_value(i, 7)
                    except_result = handle_excel.get_col_value(i, 8)
                    method = handle_excel.get_col_value(i, 4)
                    send_value = handle_excel.get_col_value(i, 5)
                    handle_value = handle_excel.get_col_value(i, 6)

                    #''而不是None
                    #if send_value:
                    self.run_method(method, send_value, handle_value)
                    if except_result != '':
                        except_value = self.get_except_result_value(
                            except_result)
                        if except_value[0] == 'text':
                            result = self.run_method(except_result_method)
                            #print(result)
                            if except_value[1] in result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')

                        elif except_value[0] == 'element':
                            result = self.run_method(except_result_method,
                                                     except_value[1])
                            if result:
                                handle_excel.write_value(i, 'pass')
                            else:
                                handle_excel.write_value(i, 'fail')
                        else:
                            print("没有else")
                    else:
                        print("预期结果为空")
Пример #22
0
 def run_main(self):
     file_path = PathUtil.get_file_path("conf/keyword.xls")
     excel = ExcelUtil(file_path)
     rows = excel.get_lines()
     action_method = ActionMethod()
     for i in range(1, rows):
         is_run = excel.get_cell_value(i, 1)
         if is_run == 'Y':
             node_element = excel.get_cell_value(i, 3)
             exec_method = excel.get_cell_value(i, 4)
             send_value = excel.get_cell_value(i, 5)
             action_element = excel.get_cell_value(i, 6)
             except_result_method = excel.get_cell_value(i, 7)
             except_result = excel.get_cell_value(i, 8)
             self.run_method(action_method, exec_method, node_element, action_element, send_value)
             if except_result_method != '' and except_result != '':
                 result = self.exec_result_method(action_method, except_result_method)
                 if except_result in result:
                     excel.write_cell_value(i, 9, 'pass')
                 else:
                     excel.write_cell_value(i, 9, 'fail')
Пример #23
0
    def run_main(self):
        self.action_method = ActionMethod()
        handle_excel = ExcelUtil("E:/ui_auto/config/keyword.xls")
        case_lines = handle_excel.get_lines()
        #print(case_lines)
        if case_lines:
            for i in range(1,case_lines):
                is_run = handle_excel.get_col_values(i,3)
                print(is_run)
                if is_run =="yes":
                    method = handle_excel.get_col_values(i,4)
                    print(method)
                    send_value = handle_excel.get_col_values(i, 5)
                    #print(send_value)
                    handle_value = handle_excel.get_col_values(i, 6)
                    #print(handle_value)
                    expect_result_method = handle_excel.get_col_values(i,7)
                    expect_result = handle_excel.get_col_values(i,8)
                    # 空判断为"" 而不是None
                    self.run_method(method,send_value,handle_value)
                    if expect_result != "":
                        expect_value = self.get_expec_result_value(expect_result)
                        #print("---->",expect_value)
                        if expect_value[0] == "text":
                            #print(expect_result_method)
                            result = self.run_method(expect_result_method)
                            #print("*************",result)
                            if expect_value[1] in result:
                                handle_excel.write_value(i,9,"pass")
                            else:
                                handle_excel.write_value(i,9,"fail")

                        elif expect_value[0] == "element":
                            result = self.run_method(expect_result_method,expect_value[1])
                            if result:
                                handle_excel.write_value(i,9,"pass")
                            else:
                                handle_excel.write_value(i,9,"fail")
                    else:
                        print("预期结果为空")
Пример #24
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil(
         'E:\PycharmProjects\seleniumPython\config\keyword.xls')
     #print(handle_excel.get_col_value(4,4))
     case_lines = handle_excel.get_lines()
     if case_lines:
         for i in range(1, case_lines):
             is_run = handle_excel.get_col_value(i, 3)
             if is_run == 'yes':
                 except_result_method = handle_excel.get_col_value(i, 7)
                 except_result = handle_excel.get_col_value(i, 8)
                 method = handle_excel.get_col_value(i, 4)
                 send_value = handle_excel.get_col_value(i, 5)
                 handle_value = handle_excel.get_col_value(i, 6)
                 #是''而不是None
                 self.run_method(method, send_value, handle_value)
                 if except_result != '':
                     except_value = self.get_except_result_value(
                         except_result)
                     if except_value[0] == 'text':
                         print('---->', except_result_method)
                         result = self.run_method(except_result_method)
                         print(result)
                         if except_value[1] in result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     elif except_value[0] == 'element':
                         result = self.run_method(except_result_method,
                                                  except_value[1])
                         if result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     else:
                         print('没有else')
                 else:
                     print('预期结果为空')
Пример #25
0
 def run_main(self):
     self.action_method = ActionMethod()
     handle_excel = ExcelUtil(
         'C:\\Users\\xiazh\\PycharmProjects\\Imooc_selenium\\config\\keyword.xls'
     )
     case_lines = handle_excel.get_lines()
     if case_lines:
         for i in range(1, case_lines):
             is_run = handle_excel.get_col_value(i, 3)
             if is_run == 'yes':
                 method = handle_excel.get_col_value(i, 4)
                 send_value = handle_excel.get_col_value(i, 5)
                 handle_value = handle_excel.get_col_value(i, 6)
                 expect_result_method = handle_excel.get_col_value(i, 7)
                 expect_result = handle_excel.get_col_value(i, 8)
                 # ''而不是None
                 # if send_value:
                 self.run_method(method, send_value, handle_value)
                 if expect_result != '':
                     expect_value = self.get_expect_result_value(
                         expect_result)
                     if expect_value[0] == 'text':
                         result = self.run_method(expect_result_method)
                         if expect_value[1] in result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     elif expect_value[0] == 'element':
                         result = self.run_method(expect_result_method,
                                                  expect_value[1])
                         if result:
                             handle_excel.write_value(i, 'pass')
                         else:
                             handle_excel.write_value(i, 'fail')
                     else:
                         print('没有else')
                 else:
                     print('预期结果为空')