def test_shape_text_attr_pg(self): # 自选图形文本属性,仅WP和PG logging.info('==========test_shape_text_attr_pg==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) gv.group_button_click(' Insert ') gv.insert_shape(self.file_type, 1) gv.group_button_click(' Edit ') gv.font_name(self.file_type, 'AndroidClock') gv.font_size(15) gv.font_style(self.file_type, '倾斜') gv.font_color(self.file_type, 6, 29) gv.swipe_ele('//*[@text=" Font Color "]', '//*[@text=" Edit "]') gv.fold_expand() time.sleep(1) x, y = gv.find_pic_position('drag_all') gv.tap(x, y) # 进入 Edit gv.pop_menu_click('editText') for i in range(20): self.driver.press_keycode(random.randint(29, 54)) time.sleep(1) gv.group_button_click(' Edit ') gv.bullets_numbers('pg', 6, 10) gv.text_align(self.file_type, '分散对齐') gv.text_align(self.file_type, '右对齐') gv.text_line_space(self.file_type, 1.5) gv.text_line_space(self.file_type, 3) gv.text_indent(self.file_type, '右缩进') gv.text_indent(self.file_type, '右缩进') gv.text_indent(self.file_type, '左缩进') time.sleep(3)
def test_wp_shape_text_attr(self): # 自选图形文本属性,仅WP和PG logging.info('==========test_wp_shape_text_attr==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) gv.group_button_click(' Insert ') gv.insert_shape(self.file_type, 1) gv.tap(680, 750) gv.pop_menu_click('editText') time.sleep(1) gv.group_button_click(' Edit ') gv.font_name(self.file_type, 'AndroidClock') gv.font_size(15) gv.font_style(self.file_type, '倾斜') gv.font_color(self.file_type, 6, 29) gv.swipe_ele('//*[@text=" Font Color "]', '//*[@text=" Edit "]') time.sleep(1) for i in range(20): self.driver.press_keycode(random.randint(29, 54)) time.sleep(1) gv.swipe_ele('//*[@text=" Highlight Color "]', '//*[@text=" Edit "]') gv.drag_coordinate(680, 750, 680, 600) gv.high_light_color(self.file_type, 6, random.randint(1, 15)) gv.bullets_numbers(self.file_type, 6, 10) gv.text_align(self.file_type, '分散对齐') gv.text_align(self.file_type, '右对齐') gv.text_line_space(self.file_type, 1.5) gv.text_line_space(self.file_type, 3) gv.text_indent(self.file_type, '右缩进') gv.text_indent(self.file_type, '右缩进') gv.text_indent(self.file_type, '左缩进') time.sleep(3)
def test_shape_attr1(self, file_type): # 文本框字符属性 logging.info('==========test_shape_attr1==========') cv = CreateView(self.driver) cv.create_file(file_type) gv = GeneralView(self.driver) x1, y1 = 0, 0 if file_type == 'ss': ss = SSView(self.driver) x1, y1, w, h = ss.cell_location() self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() gv.group_button_click(' Insert ') gv.insert_shape(file_type) time.sleep(1) x, y = gv.find_pic_position('drag_all') gv.tap(x, y) # 进入编辑 gv.pop_menu_click('editText') if file_type == 'ss': gv.fold_expand() gv.fold_expand() x, y = gv.find_pic_position('drag_all') gv.tap(x, y) # 进入编辑 gv.pop_menu_click('editText') for i in range(50): self.driver.press_keycode(random.randint(7, 16)) if file_type == 'pg': gv.tap(250, 250) gv.tap(550, 850) elif file_type == 'ss': gv.tap(x1, y1) gv.tap(x, y) else: gv.tap(250, 450) time.sleep(1) gv.fold_expand() gv.tap(x, y) time.sleep(1) gv.fold_expand() gv.shape_option(file_type, 5, width=5, height=5) gv.shape_option(file_type, 6, top=0.5, bottom=0.5, left=0.5, right=0.5) ele1 = '//*[@text=" Shape "]' ele2 = '//*[@text=" Outline "]' ele3 = '//*[@text=" Effect "]' if file_type == 'pg': ele0 = '//*[@text=" Insert "]' gv.swipe_ele(ele0, ele1) gv.swipe_ele(ele2, ele1) gv.swipe_ele(ele3, ele1) gv.shape_content_align(file_type, '右对齐', '下对齐') gv.shape_content_align(file_type) gv.shape_content_align(file_type, '水平居中', '垂直居中') time.sleep(3)
def test_pop_cell_row_col1(self): # 单元格、行、列相关操作 logging.info('==========test_pop_cell_row_col1==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) time.sleep(1) x, y, width, height = ss.cell_location() # 新建默认B8 ss.cell_edit() # 进入 Edit for i in range(8): self.driver.press_keycode(random.randint(29, 54)) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() time.sleep(0.5) cv.tap(x + width * 0.5, y + height * 0.5) # 复制粘贴 gv.pop_menu_click('copy') cv.tap(x + width * 1.5, y + height * 1.5) cv.tap(x + width * 1.5, y + height * 1.5) gv.pop_menu_click('paste') cv.tap(x + width * 0.5, y + height * 0.5) gv.pop_menu_click('cut') cv.tap(x + width * 2.5, y + height * 2.5) cv.tap(x + width * 2.5, y + height * 2.5) gv.pop_menu_click('paste') x, y = gv.find_pic_position('drag_point2') # 多选单元格 gv.drag_coordinate(x, y, x + width, y + height)
def test_insert_pic(self, file_type='ss'): logging.info('==========test_insert_pic==========') cv = CreateView(self.driver) gv = GeneralView(self.driver) cv.create_file(file_type) cv.group_button_click(' Insert ') gv.insert_pic() gv.pic_option(file_type, 5, 4, 4) gv.pic_option(file_type, 1) ele1 = '//*[@text=" Picture "]' ele2 = '//*[@text=" Outline "]' # ele3 = '//*[@text="文字环绕"]' # ele4 = '//*[@text="叠放次序"]' gv.swipe_ele(ele2, ele1) if file_type == 'wp': gv.text_wrap() x, y = gv.find_pic_position('rotate_free') gv.swipe(x, y, x + 100, y + 100) x, y = gv.find_pic_position('drag_all') gv.tap(x, y) gv.pop_menu_click('copy') gv.tap(x, y) gv.pop_menu_click('paste') gv.tap(x, y) gv.pop_menu_click('paste') gv.shape_layer(' Send Backward ') gv.shape_layer(' Send to Back ') gv.shape_layer(' Bring Forward ') gv.shape_layer(' Bring to Front ')
def test_insert_pic1(self, file_type='ss'): logging.info('==========test_insert_pic==========') suffix = SEARCH_DICT[file_type] ov = OpenView(self.driver) ov.open_random_file(suffix) gv = GeneralView(self.driver) gv.switch_write_read() gv.group_button_click(' Insert ') gv.insert_pic() gv.pic_option(file_type, 5, 4, 4) ele1 = '//*[@text=" Picture "]' ele2 = '//*[@text=" Outline "]' # ele3 = '//*[@text="文字环绕"]' # ele4 = '//*[@text="叠放次序"]' gv.swipe_ele(ele2, ele1) if file_type == 'wp': gv.text_wrap(' Square ') gv.text_wrap(' In Line with Text ') gv.text_wrap(' Tight ') gv.text_wrap(' Behind Text ') gv.text_wrap(' In Front of Text ') x, y = gv.find_pic_position('drag_pic') gv.tap(x, y) gv.pop_menu_click('cut') if file_type == 'wp': gv.long_press(x, y) else: gv.tap(x + 100, y) gv.tap(x + 100, y) gv.pop_menu_click('paste') x, y = gv.find_pic_position('drag_pic') gv.tap(x, y) x, y = gv.find_pic_position('rotate_90') gv.swipe(x, y, x - 50, y) gv.pop_menu_click('save_to_album') gv.pop_menu_click('delete')
def test_wp_pop_menu_text(self): logging.info('==========test_wp_pop_menu_text==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) time.sleep(1) gv.tap(700, 700) for i in range(100): self.driver.press_keycode(random.randint(29, 54)) gv.drag_coordinate(300, 540, 300, 200) gv.pop_menu_click('copy') gv.tap(700, 700) time.sleep(1) gv.long_press(700, 700) gv.pop_menu_click('paste') gv.drag_coordinate(300, 540, 300, 200) gv.pop_menu_click('cut') gv.tap(700, 700) time.sleep(1) gv.long_press(700, 700) gv.pop_menu_click('paste')
def test_pop_menu_shape(self, file_type='wp'): logging.info('==========test_pop_menu_shape==========') cv = CreateView(self.driver) cv.create_file(file_type) gv = GeneralView(self.driver) gv.group_button_click(' Insert ') gv.insert_shape(file_type) time.sleep(1) if file_type == 'pg': gv.tap(550, 450) gv.pop_menu_click('editText') else: gv.tap(700, 700, 2) gv.tap(700, 700, 3) for i in range(50): self.driver.press_keycode(random.randint(29, 54)) if file_type == 'pg': gv.drag_coordinate(550, 830, 500, 800) gv.pop_menu_click('copy') gv.tap(550, 830) time.sleep(1) gv.long_press(550, 830) gv.pop_menu_click('paste') gv.drag_coordinate(550, 830, 500, 800) gv.pop_menu_click('cut') gv.tap(550, 830) time.sleep(1) gv.long_press(550, 830) gv.pop_menu_click('paste') gv.drag_coordinate(550, 830, 500, 800) gv.pop_menu_click('delete') else: gv.drag_coordinate(700, 700, 550, 550) gv.pop_menu_click('copy') gv.tap(700, 700) time.sleep(1) gv.long_press(700, 700) gv.pop_menu_click('paste') gv.drag_coordinate(700, 700, 550, 550) gv.pop_menu_click('cut') gv.tap(700, 700) time.sleep(1) gv.long_press(700, 700) gv.pop_menu_click('paste') gv.drag_coordinate(700, 700, 550, 550) gv.pop_menu_click('delete')
def test_ppt_slide(self): # 幻灯片复制、剪切、粘贴 logging.info('==========test_ppt_slide==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[1]').click() time.sleep(1) gv.pop_menu_click('copy') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[1]').click() time.sleep(1) gv.pop_menu_click('paste') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[2]').click() time.sleep(1) gv.pop_menu_click('cut') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[1]').click() time.sleep(1) gv.pop_menu_click('paste') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[2]').click() time.sleep(1) gv.pop_menu_click('create') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[3]').click() time.sleep(1) gv.pop_menu_click('delete') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[2]').click() time.sleep(1) x1, y1 = gv.find_pic_position('copy') x2, y2 = gv.find_pic_position('delete') gv.swipe(x2, y2, x1, y1) gv.pop_menu_click('hide') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[2]').click() time.sleep(1) gv.pop_menu_click('hide_cancel') self.driver.find_element( By.XPATH, '//android.widget.HorizontalScrollView' '/android.widget.LinearLayout/android.view.View[2]').click() time.sleep(1) gv.pop_menu_click('comment') time.sleep(3)
def test_pop_menu_cell_text(self): logging.info('==========test_pop_menu_cell_text==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) time.sleep(1) x, y, width, height = ss.cell_location() # 新建默认B8 cv.tap(x + width * 0.5, y - height * 5.5) # 点击B2 ss.cell_edit() # 进入 Edit for i in range(15): self.driver.press_keycode(random.randint(29, 54)) # time.sleep(1) gv.drag_coordinate(x + 200, y - height * 5.5, x + 50, y - height * 5.5) gv.pop_menu_click('copy') gv.tap(x + width * 0.5, y - height * 5.5) gv.pop_menu_click('paste') gv.drag_coordinate(x + 200, y - height * 5.5, x + 50, y - height * 5.5) gv.pop_menu_click('cut') gv.tap(x + width * 0.5, y - height * 5.5) gv.pop_menu_click('paste') gv.tap(x + width * 0.5, y - height * 5.5) gv.pop_menu_click('newline') self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() gv.tap(x + width * 0.5, y - height * 5.5) gv.pop_menu_click('fill_data') x1, y1 = gv.find_pic_position('fill_down') gv.drag_coordinate(x1, y1, x1, y1 + height * 2) gv.tap(x + width * 0.5, y - height * 5.5) time.sleep(1) x2, y2 = gv.find_pic_position('fill_data') gv.swipe(x2, y2, x2 - width * 2, y2) gv.pop_menu_click('clear_content')
def test_pop_cell_row_col3(self): # 单元格、行、列相关操作 logging.info('==========test_pop_cell_row_col3==========') cv = CreateView(self.driver) cv.create_file(self.file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) time.sleep(1) x, y, width, height = ss.cell_location() # 新建默认B8 cv.tap(x + width * 0.5, y - height * 5.5) ss.cell_edit() # 进入 Edit for i in range(8): self.driver.press_keycode(random.randint(29, 54)) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() time.sleep(0.5) x1, y1, x2, y2 = ss.row_col_loc() ss.tap(x2 + width * 1.5, y2 - 10) gv.pop_menu_click('insert') ss.tap(x2 + width * 1.5, y2 - 10) gv.pop_menu_click('delete') ss.tap(x2 + width * 1.5, y2 - 10) gv.pop_menu_click('copy') ss.tap(x2 + width * 2.5, y2 - 10) x3, y3 = gv.find_pic_position('copy') x4, y4 = gv.find_pic_position('insert') gv.swipe(x3, y3, x4, y4) time.sleep(1) gv.pop_menu_click('paste') ss.tap(x2 + width * 1.5, y2 - 10) gv.pop_menu_click('cut') ss.tap(x2 + width * 2.5, y2 - 10) gv.pop_menu_click('paste') ss.tap(x2 + width * 1.5, y2 - 10) gv.pop_menu_click('hide') ss.tap(x2 + width * 1.5, y2 - 10) x3, y3 = gv.find_pic_position('hide') x4, y4 = gv.find_pic_position('copy') gv.swipe(x3, y3, x4, y4) time.sleep(1) gv.pop_menu_click('hide_cancel') ss.tap(x2 + width * 1.5, y2 - 10) x, y = gv.find_pic_position('column_right') gv.drag_coordinate(x, y, x + width, y) gv.drag_coordinate(x, y2 - 10, x + width, y2 - 10)