def test_ss_filter1(self): logging.info('==========test_ss_filter1==========') gv = GeneralView(self.driver) ss = SSView(self.driver) cv = CreateView(self.driver) cv.create_file(self.file_type) gv.group_button_click(' View ') self.driver.find_element( By.ID, 'com.yozo.office.en:id/yozo_ui_ss_option_id_filter').click() tip = self.driver.find_element(By.ID, 'com.yozo.office.en:id/text_content') self.assertTrue(tip != None) self.driver.find_element(By.ID, 'com.yozo.office.en:id/btn_right').click() ss.cell_edit() x, y, width, height = ss.cell_location() self.driver.press_keycode(15) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.press_keycode(7) gv.tap(x + width / 2, y - height / 2) gv.group_button_click(' View ') self.driver.find_element( By.ID, 'com.yozo.office.en:id/yozo_ui_ss_option_id_filter').click() state = self.driver.find_element( By.ID, 'com.yozo.office.en:id/yozo_ui_option_group_checkbox_switch').text self.assertTrue(state == 'ON') print(x, y) gv.tap(x + width - 10, y + height)
def test_merge_wrap(self): logging.info('==========test_merge_wrap==========') cv = CreateView(self.driver) cv.create_file('ss', 0) time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) for i in range(20): self.driver.press_keycode(45) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.drag_coordinate(110 + 263 * 2, 295 + 55 * 2, 110 + 263 * 3, 295 + 55 * 2) ss = SSView(self.driver) ss.group_button_click('编辑') ele1 = '//*[@resource-id="com.yozo.office:id/yozo_ui_ss_option_id_font_name"]' ele2 = '//*[@text="单元格填充"]' ele3 = '//*[@text="数字格式"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele2) ss.cell_merge_split() ss.cell_merge_split() ss.cell_auto_wrap() ss.cell_auto_wrap() time.sleep(3)
def test_insert_chart1(self, file_type): logging.info('==========test_insert_chart1==========') cv = CreateView(self.driver) cv.create_file(file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) time.sleep(1) if file_type == 'ss': x, y, width, height = ss.cell_location() for i in range(3): cv.tap(x + width * 0.5, y + height * (i + 0.5)) ss.cell_edit() # 双击进入编辑 self.driver.press_keycode(random.randint(7, 16)) gv.drag_coordinate(x, y + height * 2, x, y) gv.group_button_click(' Insert ') if file_type == 'pg': ele1 = '//*[@text=" Slide "]' ele2 = '//*[@text=" Picture "]' gv.swipe_ele(ele2, ele1) gv.insert_chart_insert(' Column Chart ', random.randint(1, 9)) gv.chart_color(random.randint(1, 8)) gv.chart_element(file_type, '大标题', 1, 1, 1) gv.chart_element_XY('x', 'x', 0, 1, 1, 1, 1, 1) gv.chart_element_XY('y', 'y', 0, 1, 1, 0, 1, 0) self.driver.find_element( By.ID, 'com.yozo.office.en:id/yozo_ui_option_back_button').click() gv.change_row_column() 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_ss_cell_select(self): logging.info('==========test_ss_cell_select==========') cv = CreateView(self.driver) ss = SSView(self.driver) cv.create_file('ss') ss.cell_edit() self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() gv = GeneralView(self.driver) gv.group_button_click(' Edit ') gv.font_name(self.file_type) gv.font_size(23) gv.font_style(self.file_type, '加粗') gv.font_style(self.file_type, '倾斜') gv.font_style(self.file_type, '删除线') gv.font_style(self.file_type, '下划线') gv.font_color(self.file_type) ele = '//*[@resource-id="com.yozo.office.en:id/yozo_ui_option_content_container"]' ss.swipe_options(ele, 'up') ss.cell_color() ss.cell_align('水平居中', '下对齐')
def test_insert_shape(self): logging.info('==========test_insert_shape==========') cv = CreateView(self.driver) cv.create_file('ss', 0) gv = GeneralView(self.driver) ss = SSView(self.driver) ss.insert_chart() gv.insert_shape('ss')
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_drag_sheet(self): # sheet拖动 logging.info('==========test_drag_sheet==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.show_sheet() ss.add_sheet() ss.add_sheet() ele1 = ss.get_element('//*[@resource-id="com.yozo.office:id/ll_ss_sheet_item"and @index="0"]') ele2 = ss.get_element('//*[@resource-id="com.yozo.office:id/ll_ss_sheet_item"and @index="2"]') # ele1 = ss.find_element(By.XPATH, '//*[@resource-id="com.yozo.office:id/ll_ss_sheet_item"and @index="0"]') # ele2 = ss.find_element(By.XPATH, '//*[@resource-id="com.yozo.office:id/ll_ss_sheet_item"and @index="2"]') ss.drag_element(ele1, ele2)
def test_ss_num_format(self): logging.info('==========test_num_style==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.cell_edit() self.driver.press_keycode(15) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() ss.group_button_click(' Edit ') ele = '//*[@resource-id="com.yozo.office.en:id/yozo_ui_option_content_container"]' ss.swipe_options(ele, 'up') ss.swipe_options(ele, 'up') ss.cell_num_format()
def test_ss_cell_border(self): # 遍历边框所有功能 logging.info('==========test_ss_cell_border==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.group_button_click(' Edit ') ele = '//*[@resource-id="com.yozo.office.en:id/yozo_ui_option_content_container"]' ss.swipe_options(ele, 'up') ss.swipe_options(ele, 'up') ss.cell_border()
def test_table_style(self): # 表格样式 logging.info('==========test_table_style==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) cv.drag_coordinate(110 + 263 * 2, 295 + 55 * 2, 110 + 263 * 3, 295 + 55 * 4) ss = SSView(self.driver) ss.group_button_click('编辑') ele1 = '//*[@text="编辑"]' ele2 = '//*[@text="字体颜色"]' ele3 = '//*[@text="单元格填充"]' ele4 = '//*[@text="数字格式"]' ele5 = '//*[@text="插入单元格"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele1) ss.swipe_ele(ele4, ele1) ss.swipe_ele(ele5, ele1) ss.table_style()
def test_table_style(self): # 表格样式 logging.info('==========test_table_style==========') cv = CreateView(self.driver) cv.create_file('ss', 0) time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) cv.drag_coordinate(110 + 263 * 2, 295 + 55 * 2, 110 + 263 * 3, 295 + 55 * 4) ss = SSView(self.driver) ss.group_button_click('编辑') ele1 = '//*[@resource-id="com.yozo.office:id/yozo_ui_ss_option_id_font_name"]' ele2 = '//*[@text="单元格填充"]' ele3 = '//*[@text="数字格式"]' ele4 = '//*[@text="插入单元格"]' ele5 = '//*[@text="设置行高列宽"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele2) ss.swipe_ele(ele4, ele3) ss.swipe_ele(ele5, ele4) ss.table_style()
def test_table_style(self): # 表格样式 logging.info('==========test_table_style==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) cv.drag_coordinate(110 + 263 * 2, 295 + 55 * 2, 110 + 263 * 3, 295 + 55 * 4) ss = SSView(self.driver) ss.group_button_click(' Edit ') ele1 = '//*[@text=" Edit "]' ele2 = '//*[@text=" Font Color "]' ele3 = '//*[@text=" Cell Fill "]' ele4 = '//*[@text=" Number Format "]' ele5 = '//*[@text=" Insert Cell "]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele1) ss.swipe_ele(ele4, ele1) ss.swipe_ele(ele5, ele1) ss.table_style()
def test_ss_cell_edit(self): logging.info('==========test_ss_cell_edit==========') cv = CreateView(self.driver) ss = SSView(self.driver) cv.create_file('ss') ss.cell_edit() gv = GeneralView(self.driver) gv.group_button_click(' Edit ') gv.font_name(self.file_type) gv.font_size(23) gv.font_style(self.file_type, '加粗') gv.font_style(self.file_type, '倾斜') gv.font_style(self.file_type, '删除线') gv.font_style(self.file_type, '下划线') gv.font_color(self.file_type) for i in range(5): self.driver.press_keycode(45) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click()
def test_insert_chart(self, file_type): # Insert 图表,仅ss,pg logging.info('==========test_insert_chart==========') chart_list = [ ' Column Chart ', ' Bar Chart ', ' Line Chart ', ' Pie Chart ', ' Scatter Chart ', ' Area Chart ', ' Doughnut Chart ', ' Radar Chart ', ' Bubble Chart ', ' Cylind Chart ', ' Cone Chart ', ' Pyramid Chart ' ] cv = CreateView(self.driver) cv.create_file(file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) time.sleep(1) if file_type == 'ss': x, y, width, height = ss.cell_location() for i in range(3): cv.tap(x + width * 0.5, y + height * (i + 0.5)) ss.cell_edit() # 双击进入编辑 self.driver.press_keycode(random.randint(7, 16)) gv.drag_coordinate(x, y + height * 2, x, y) for i in range(3): gv.group_button_click(' Insert ') if file_type == 'pg' and i == 0: ele1 = '//*[@text=" Slide "]' ele2 = '//*[@text=" Picture "]' gv.swipe_ele(ele2, ele1) gv.insert_chart_insert(chart_list[i], random.randint(1, 9)) gv.chart_template() ele1 = '//*[@text=" Chart "]' ele2 = '//*[@text=" Chart Type "]' gv.swipe_ele(ele2, ele1) gv.shape_layer(' Send Backward ') gv.shape_layer(' Send to Back ') gv.shape_layer(' Bring Forward ') gv.shape_layer(' Bring to Front ') time.sleep(3)
def test_insert_shape(self, type): logging.info('==========test_insert_shape==========') cv = CreateView(self.driver) cv.create_file(type) gv = GeneralView(self.driver) ss = SSView(self.driver) # ss.insert_chart() gv.group_button_click('插入') gv.insert_shape(type) for i in range(42): gv.shape_insert(type, 6, i) time.sleep(3)
def test_insert_shape(self, file_type): logging.info('==========test_insert_shape==========') cv = CreateView(self.driver) cv.create_file(file_type) gv = GeneralView(self.driver) ss = SSView(self.driver) # ss.insert_chart() gv.group_button_click(' Insert ') gv.insert_shape(file_type) for i in range(5): gv.shape_insert(file_type, 6, random.randint(1, 42)) 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_cell_border(self): # 遍历边框所有功能 logging.info('==========test_cell_border==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.group_button_click('编辑') time.sleep(1) self.driver.swipe(200, 1856, 200, 1150, 2000) ss.cell_border()
def test_num_style(self): logging.info('==========test_num_style==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.press_keycode(15) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() ss = SSView(self.driver) ss.group_button_click('编辑') ele1 = '//*[@text="编辑"]' ele2 = '//*[@text="字体颜色"]' ele3 = '//*[@text="单元格填充"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele1) ss.cell_num_style()
def test_num_style(self): logging.info('==========test_cell_border==========') cv = CreateView(self.driver) cv.create_file('ss', 0) time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.press_keycode(15) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.press_keycode(7) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() ss = SSView(self.driver) ss.group_button_click('编辑') ele1 = '//*[@resource-id="com.yozo.office:id/yozo_ui_ss_option_id_font_name"]' ele2 = '//*[@text="单元格填充"]' ele3 = '//*[@text="数字格式"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele2) ss.cell_num_style()
def test_cell_attr(self): logging.info('==========test_cell_attr==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.press_keycode(45) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() ss = SSView(self.driver) ss.group_button_click('编辑') time.sleep(1) self.driver.swipe(200, 1856, 200, 1150, 2000) ss.cell_align('水平居中', '下对齐')
def test_formula(self): logging.info('==========test_formula==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) for i in range(10): cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.press_keycode(random.randint(7, 16)) ss = SSView(self.driver) cv.tap(110 + 263 * 2.5, 295 + 55 * 1.5) # 求和 ss.auto_sum('求和') for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 2.5) # 平均值 ss.auto_sum('平均值') for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 3.5) # 计数 ss.auto_sum('计数') for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 4.5) # 最大值 ss.auto_sum('最大值') for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 5.5) # 最小值 ss.auto_sum('最小值') for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() time.sleep(3)
def test_ss_filter_by_color(self): logging.info('==========test_ss_filter_cd1_none==========') ss = SSView(self.driver) ov = OpenView(self.driver) ov.open_file('screen.xls') ss.switch_write_read() ss.cell_edit() x, y, width, height = ss.cell_location() ss.tap(x + width / 2, y - height / 2) ss.group_button_click(' View ') self.driver.find_element( By.ID, 'com.yozo.office.en:id/yozo_ui_ss_option_id_filter').click() x1 = x - width - 18 y1 = y - height * 3 - 27 ss.tap(x1, y1) self.driver.find_element(By.XPATH, '//*[@text="自定义"]').click() self.driver.find_element( By.ID, 'com.yozo.office.en:id/tv_filter_color_type').click() time.sleep(1) self.driver.find_element(By.XPATH, '//*[@text="字体颜色"]').click() eles = self.driver.find_elements( By.XPATH, '//android.support.v7.widget.RecyclerView/android.widget.RelativeLayout' ) eles[random.randint(0, len(eles) - 1)].click() self.driver.find_element( By.ID, 'com.yozo.office.en:id/tv_ss_filter_ok').click() ss.tap(x1, y1, 2) self.driver.find_element(By.XPATH, '//*[@text="自定义"]').click() self.driver.find_element( By.ID, 'com.yozo.office.en:id/tv_filter_color_type').click() time.sleep(1) self.driver.find_element(By.XPATH, '//*[@text="单元格颜色"]').click() eles = self.driver.find_elements( By.XPATH, '//android.support.v7.widget.RecyclerView/android.widget.RelativeLayout' ) eles[random.randint(0, len(eles) - 1)].click() self.driver.find_element( By.ID, 'com.yozo.office.en:id/tv_ss_filter_ok').click()
def test_sheet_operation(self): # sheet相关功能 logging.info('==========test_sheet_operation==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.show_sheet() ss.hide_sheet() ss.show_sheet() ss.add_sheet() ss.rename_sheet(0, 'test') self.assertTrue(ss.check_rename_sheet(0, 'test'))
def test_sheet_operation1(self): # sheet相关功能 logging.info('==========test_sheet_operation1==========') cv = CreateView(self.driver) cv.create_file('ss') ss = SSView(self.driver) ss.show_sheet() ss.operate_sheet(0, 'insert') ss.operate_sheet(0, 'copy') ss.operate_sheet(0, 'remove') ss.operate_sheet(0, 'hide') ss.unhide_sheet(0, 0)
def test_ss_chart_pop(self): # 图表相关操作 logging.info('==========test_ss_chart_pop==========') cv = CreateView(self.driver) cv.create_file(self.file_type) ss = SSView(self.driver) gv = GeneralView(self.driver) time.sleep(2) x, y, width, height = ss.object_position('drag_point1', 'drag_point2') ss.tap(x, y) time.sleep(2) ss.pop_menu_click('edit') self.driver.press_keycode(12) ss.tap(x, y + height) time.sleep(1) ss.tap(x, y + height) time.sleep(2) ss.pop_menu_click('edit') self.driver.press_keycode(15) self.driver.find_element( By.ID, 'com.yozo.office.en:id/formulabar_ok').click() # ss.tap(x, y) x, y = ss.find_pic_position('drag_point1') ss.swipe(x, y, x, y - height) time.sleep(1) ss.group_button_click(' Insert ') gv.insert_chart_insert(' Column Chart ', 2) x, y, width, height = ss.object_position('chart_all1', 'chart_all4') ss.tap(x, y) time.sleep(2) ss.pop_menu_click('cut') ss.tap(x, y) time.sleep(2) ss.tap(x, y) ss.pop_menu_click('paste') ss.tap(x, y) time.sleep(2) ss.pop_menu_click('copy') ss.tap(x, y) time.sleep(2) ss.pop_menu_click('paste') ss.swipe(x, y, x - 100, y + 100) x, y = ss.find_pic_position('chart_all1') ss.swipe(x, y, x - 100, y - 100)
def test_cell_insert_delete_fit(self): # 插入删除行宽列高清除 logging.info('==========test_cell_inser_delete_fit==========') cv = CreateView(self.driver) type = 'ss' cv.create_file('ss') time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) for i in range(20): self.driver.press_keycode(45) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() ss = SSView(self.driver) ss.group_button_click('编辑') gv = GeneralView(self.driver) gv.font_style(type, '删除线') ele1 = '//*[@text="编辑"]' ele2 = '//*[@text="字体颜色"]' ele3 = '//*[@text="单元格填充"]' ele4 = '//*[@text="数字格式"]' ele5 = '//*[@text="插入单元格"]' ele6 = '//*[@text="删除单元格"]' ele7 = '//*[@text="设置行高列宽"]' ss.swipe_ele(ele2, ele1) ss.swipe_ele(ele3, ele1) ss.swipe_ele(ele4, ele1) ss.cell_insert('右移') ss.cell_insert('下移') ss.cell_insert('插入整行') ss.cell_insert('插入整列') ss.cell_delete('删除整列') ss.cell_delete('删除整行') ss.cell_delete('上移') ss.cell_delete('左移') ss.swipe_ele(ele5, ele1) ss.cell_set_size(5, 5) ss.group_button_click('编辑') ss.cell_clear('清除格式') gv.undo_option() ss.cell_clear('清除内容') gv.undo_option() ss.cell_clear('清除所有') gv.undo_option() ss.swipe_ele(ele6, ele7) ss.cell_fit_height() ss.cell_fit_width() time.sleep(3)
def test_data_table(self): # 数据排序,工作表格式 logging.info('==========test_data_table==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) for i in range(10): time.sleep(1) cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.press_keycode(random.randint(7, 16)) ss = SSView(self.driver) ss.group_button_click('查看') time.sleep(1) ss.data_sort('降序') ss.data_sort('升序') ss.sheet_style('隐藏编辑栏') ss.sheet_style('隐藏编辑栏') ss.sheet_style('隐藏表头') ss.sheet_style('隐藏表头') ss.sheet_style('隐藏网格线') # ss.sheet_style('冻结窗口') 功能未完成 # ss.sheet_style('取消冻结') ss.sheet_style('100%') time.sleep(3)
def test_formula1(self): # 其他类型公式 logging.info('==========test_formula1==========') cv = CreateView(self.driver) cv.create_file('ss') time.sleep(1) for i in range(10): cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) # 双击进入编辑 cv.tap(110 + 263 * 1.5, 295 + 55 * (1.5 + i)) self.driver.press_keycode(random.randint(7, 16)) ss = SSView(self.driver) cv.tap(110 + 263 * 2.5, 295 + 55 * 0.5) ss.formula_all('最近使用', 'MAX') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 1.5) ss.formula_all('数学和三角', 'ABS') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 2.5) ss.formula_all('财务', 'DOLLARDE') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) time.sleep(0.5) cv.tap(110 + 263 * 1.5, 295 + 55 * 5.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 3.5) ss.formula_all('逻辑', 'AND') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) time.sleep(0.5) cv.tap(110 + 263 * 1.5, 295 + 55 * 5.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 4.5) ss.formula_all('文本', 'ASC') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 5.5) ss.formula_all('日期和时间', 'NOW') self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 6.5) ss.formula_all('查找与引用', 'COLUMN') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 7.5) ss.formula_all('统计', 'AVERAGE') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() # cv.tap(110 + 263 * 2.5, 295 + 55 * 8.5) # ss.formula_all('工程', 'DEC2BIN') # cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) # self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 9.5) ss.formula_all('信息', 'ISBLANK') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click() cv.tap(110 + 263 * 2.5, 295 + 55 * 10.5) ss.formula_all('所有公式', 'ABS') cv.tap(110 + 263 * 1.5, 295 + 55 * 1.5) self.driver.find_element(By.ID, 'com.yozo.office:id/formulabar_ok').click()