Beispiel #1
0
 def test_save_as_newFile(self):  # 新建脚本另存为
     logging.info('==========test_save_as_newFile==========')
     cv = CreateView(self.driver)
     cv.create_file('wp', 0)
     file_name = 'save_as_newFile ' + cv.getTime('%H_%M_%S')
     cv.save_file_option(file_name, 'local', 1, 'save_as')
     self.assertTrue(cv.check_save_file())
Beispiel #2
0
    def test_ppt_autoplay_to_last(self):
        logging.info('==========test_ppt_autoplay_to_last==========')
        cv = CreateView(self.driver)
        cv.create_file('pg')
        pg = PGView(self.driver)
        pg.add_new()
        pg.add_new()

        logging.info('==========autoplay to the last page==========')
        pg = PGView(self.driver)
        pg.group_button_click(' Play ')
        pg.play_mode('autoplay')

        logging.info('==========validate toast==========')
        try:
            WebDriverWait(self.driver, 120).until(
                ec.visibility_of_element_located(
                    (By.XPATH, '//*[@text="It has been the last slide."]')))
        except TimeoutException:
            self.assertTrue(False, '等待自动 Play 两分钟,未找到弹窗')
        else:
            toast = self.driver.find_element(
                By.XPATH, '//*[@text="It has been the last slide."]')
            self.assertEqual(toast.text, 'It has been the last slide.',
                             '验证弹窗信息为已是简报尾页')
Beispiel #3
0
    def test_shape_attr1(self):
        logging.info('==========test_shape_attr1==========')
        cv = CreateView(self.driver)
        cv.create_file('ss', 0)
        gv = GeneralView(self.driver)
        gv.group_button_click('插入')
        type = 'ss'
        gv.insert_shape('ss', 1)
        time.sleep(1)
        gv.tap(700, 767, 4)  # 双击进入编辑
        for i in range(100):
            self.driver.press_keycode(random.randint(7, 16))
        gv.group_button_click('编辑')

        gv.shape_option(type, 5, width=5, height=5)
        gv.shape_option(type, 6, top=0.5, bottom=0.5, left=0.5, right=0.5)
        ele1 = '//*[@resource-id="com.yozo.office:id/yozo_ui_ss_option_id_shape_quick_function"]'
        ele2 = '//*[@text="轮廓"]'
        ele3 = '//*[@text="效果"]'
        gv.swipe_ele(ele2, ele1)
        gv.swipe_ele(ele3, ele2)
        gv.shape_content_align(type, '右对齐', '下对齐')
        gv.shape_content_align(type)
        gv.shape_content_align(type, '水平居中', '垂直居中')
        time.sleep(3)
Beispiel #4
0
 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)
Beispiel #5
0
    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)
Beispiel #6
0
 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_shape_attr(self, type):
     logging.info('==========test_shape_attr==========')
     cv = CreateView(self.driver)
     cv.create_file(type)
     gv = GeneralView(self.driver)
     gv.group_button_click('插入')
     gv.insert_shape(type, 6, 30)
     gv.shape_insert(type, 6, 31)
     gv.shape_insert(type, 6, 32)
     gv.shape_insert(type, 6, 33)
     gv.shape_option(type, 2)
     gv.shape_fill_color(type, 6, 24)
     gv.shape_fill_color_transparency(5)
     ele1 = '//*[@resource-id="com.yozo.office:id/yozo_ui_%s_option_id_shape_quick_function"]' % type
     ele2 = '//*[@text="轮廓"]'
     gv.swipe_ele(ele2, ele1)
     gv.shape_border_color(type, 6, 5)
     gv.shape_border_type(type, 6, 3)
     gv.shape_border_width(type, 6, 20)
     ele3 = '//*[@text="效果"]'
     gv.swipe_ele(ele3, ele2)
     gv.shape_effect_type(type, 6, 4, 5)
     gv.shape_layer('下移一层')
     gv.shape_layer('置于底层')
     gv.shape_layer('上移一层')
     gv.shape_layer('置于顶层')
     time.sleep(3)
Beispiel #8
0
    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)
Beispiel #9
0
    def test_ppt_play_to_last(self, play_type):
        logging.info('==========test_ppt_play_to_last==========')
        cv = CreateView(self.driver)
        cv.create_file('pg')
        pg = PGView(self.driver)
        pg.add_new()
        pg.add_new()

        logging.info('==========play to the last page==========')
        pg = PGView(self.driver)
        pg.group_button_click(' Play ')
        pg.play_mode(play_type)
        if play_type == 'first':
            index = 1
        else:
            index = 3
        pg.play_to_last(index, 3)

        logging.info('==========validate toast==========')
        try:
            toast = self.driver.find_element(
                By.XPATH, '//*[@text="It has been the last slide."]')
        except NoSuchElementException:
            self.assertTrue(False, '未出现弹窗')
        else:
            self.assertEqual(toast.text, 'It has been the last slide.',
                             '验证弹窗信息为已是简报尾页')
Beispiel #10
0
 def test_wp_save_newFile(self):  # 新建脚本保存
     logging.info('==========test_wp_save_newFile==========')
     cv = CreateView(self.driver)
     cv.create_file('wp', 0)
     file_name = 'save_newFile ' + time.strftime("%H%M%S")
     cv.save_file_icon(file_name, 'local', 2)
     self.assertTrue(cv.check_save_file())
Beispiel #11
0
    def test_ppt_insert_new(self):
        logging.info('==========test_ppt_insert_new==========')
        cv = CreateView(self.driver)
        cv.create_file('pg')

        logging.info('==========insert new ppt==========')
        pv = PGView(self.driver)
        pv.insert_new_ppt()
        gv = GeneralView(self.driver)
        gv.fold_expand()

        logging.info('==========validate insert success==========')
        thumbnails_list = self.driver.find_elements(By.CLASS_NAME,
                                                    'android.view.View')
        thumbnails_list[0].click()
        pv.screenshot_edit_ppt(SEREEN_SHOTS + 'new_first.png')
        thumbnails_list[1].click()
        pv.screenshot_edit_ppt(SEREEN_SHOTS + 'new_second.png')

        result1 = gv.compare_pic('first.png', 'new_first.png')
        result2 = gv.compare_pic('new_second.png', 'new_ppt.png')

        self.assertEqual(result1, 0.0)
        self.assertEqual(result2, 0.0)

        logging.info('==========delete pngs==========')
        os.remove(SEREEN_SHOTS + 'first.png')
        os.remove(SEREEN_SHOTS + 'new_first.png')
        os.remove(SEREEN_SHOTS + 'new_second.png')
Beispiel #12
0
 def test_wp_font_attr(self):
     logging.info('==========test_wp_font_attr===========')
     cv = CreateView(self.driver)
     cv.create_file(self.file_type)
     time.sleep(1)
     wp = WPView(self.driver)
     wp.group_button_click(' Edit ')
     wp.font_size(16)
     wp.font_style(self.file_type, '倾斜')
     wp.font_color(self.file_type, 3)
     ele1 = '//*[@text=" Edit "]'
     ele2 = '//*[@text=" Font Color "]'
     ele3 = '//*[@text=" Highlight Color "]'
     ele4 = '//*[@text=" Columns "]'
     wp.swipe_ele(ele2, ele1)
     time.sleep(1)
     wp.tap(450, 450)
     for i in range(100):
         self.driver.press_keycode(random.randint(29, 54))
     wp.group_button_click(' Edit ')
     wp.drag_coordinate(450, 500, 200, 500)
     wp.high_light_color(self.file_type, 3)
     wp.bullets_numbers(self.file_type, 6, 14)
     wp.text_align(self.file_type, '右对齐')
     wp.swipe_ele(ele3, ele1)
     wp.text_line_space(self.file_type, 2.5)
     wp.text_indent(self.file_type, '右缩进')
     wp.swipe_ele(ele4, ele1)
     wp.text_columns(4)
     wp.text_columns(3)
     wp.text_columns(2)
     time.sleep(3)
Beispiel #13
0
    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('水平居中', '下对齐')
Beispiel #14
0
 def test_zz_save_newFile(self, file_type):  # 新建脚本保存
     logging.info('==========test_save_newFile==========')
     cv = CreateView(self.driver)
     cv.create_file(file_type)
     file_name = 'save_new' + cv.getTime('%Y%m%d%H%M%S')
     cv.save_new_file(file_name, 'local', item=2)
     self.assertTrue(cv.check_save_file())
Beispiel #15
0
 def test_search_replace(self, file_type):  # 查找替换
     logging.info('==========test_search_replace==========')
     cv = CreateView(self.driver)
     gv = GeneralView(self.driver)
     cv.create_file(file_type)
     if file_type == 'ss':
         self.driver.find_element(
             By.ID,
             'com.yozo.office.en:id/formulabar_edit_container').click()
     elif file_type == 'pg':
         pg = PGView(self.driver)
         x, y = pg.get_size()
         pg.tap(x * 0.5, y * 0.4)
         pg.tap(x * 0.5, y * 0.4)
     elif file_type == 'wp':
         gv.tap(700, 700)
     self.driver.press_keycode(53)
     self.driver.press_keycode(43)
     self.driver.press_keycode(54)
     self.driver.press_keycode(43)
     if file_type in WS:
         if file_type == 'ss':
             self.driver.find_element(
                 By.ID, 'com.yozo.office.en:id/formulabar_ok').click()
         gv.group_button_click(' View ')
     gv.search_content(file_type, 'yozo')
     gv.replace_content('YOZO')
     time.sleep(3)
     gv.replace_content('yozo', 'all')
Beispiel #16
0
 def test_read_mode(self, file_type):  # 阅读模式
     logging.info('==========test_read_mode==========')
     cv = CreateView(self.driver)
     cv.create_file(file_type)
     gv = GeneralView(self.driver)
     gv.switch_write_read()
     self.assertTrue(gv.check_write_read())
Beispiel #17
0
 def wp_insert_one_table(self):
     logging.info('==========wp_insert_one_table==========')
     cv = CreateView(self.driver)
     cv.create_file('wp')
     wp = WPView(self.driver)
     wp.group_button_click(' Insert ')
     wp.insert_example_table()
Beispiel #18
0
 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)
Beispiel #19
0
 def test_shape_text_attr_pg(self):  # 自选图形文本属性,仅WP和PG
     logging.info('==========test_shape_text_attr_pg==========')
     type = 'pg'
     cv = CreateView(self.driver)
     cv.create_file(type)
     gv = GeneralView(self.driver)
     gv.group_button_click('插入')
     gv.insert_shape(type, 1)
     gv.group_button_click('编辑')
     gv.font_name(type, 'AndroidClock')
     gv.font_size(15)
     gv.font_style(type, '倾斜')
     gv.font_color(type, 6, 29)
     gv.swipe_ele('//*[@text="字体颜色"]', '//*[@text="编辑"]')
     time.sleep(1)
     gv.tap(550, 450)
     time.sleep(1)
     gv.tap(550, 450, 6)
     time.sleep(1)
     for i in range(20):
         self.driver.press_keycode(random.randint(29, 54))
     time.sleep(1)
     gv.group_button_click('编辑')
     # gv.high_light_color(type,6,6)
     gv.bullets_numbers(type, 6, 10)
     gv.text_align(type, '分散对齐')
     gv.text_align(type, '右对齐')
     gv.text_line_space(type, 1.5)
     gv.text_line_space(type, 3)
     gv.text_indent(type, '右缩进')
     gv.text_indent(type, '右缩进')
     gv.text_indent(type, '左缩进')
     time.sleep(3)
Beispiel #20
0
 def test_save_newFile(self, type):  # 新建脚本保存
     logging.info('==========test_save_newFile==========')
     cv = CreateView(self.driver)
     cv.create_file(type)
     file_name = 'save_new ' + cv.getTime('%H_%M_%S')
     cv.save_new_file(file_name, 'local', 2)
     self.assertTrue(cv.check_save_file())
Beispiel #21
0
    def test_merge_wrap(self):
        logging.info('==========test_merge_wrap==========')
        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)
        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 = '//*[@text="编辑"]'
        ele2 = '//*[@text="字体颜色"]'
        ele3 = '//*[@text="单元格填充"]'
        ele4 = '//*[@text="数字格式"]'
        ss.swipe_ele(ele2, ele1)
        ss.swipe_ele(ele3, ele1)
        ss.swipe_ele(ele4, ele1)
        ss.cell_merge_split()
        ss.cell_merge_split()
        ss.cell_auto_wrap()
        ss.cell_auto_wrap()
        time.sleep(3)
Beispiel #22
0
    def test_insert_chart(self, type):  # 插入图表,仅ss,pg
        logging.info('==========test_insert_chart==========')
        chart_list = ['柱形图', '条形图', '折线图', '饼图', '散点图', '面积图', '圆环图', '雷达图', '圆柱图', '圆锥图',
                      '棱锥图']
        cv = CreateView(self.driver)
        cv.create_file(type)
        gv = GeneralView(self.driver)

        time.sleep(1)
        if type == 'ss':
            for i in range(3):
                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))
            gv.drag_coordinate(110 + 263 * 2, 295 + 55 * 2, 110 + 263 * 2, 295 + 55 * 4)

        for i in chart_list:
            gv.group_button_click('插入')
            gv.insert_chart_insert(i, random.randint(1, 9))
            gv.chart_template()
        ele1 = '//*[@text="图表类型"]'
        ele2 = '//*[@text="图表元素"]'
        gv.swipe_ele(ele2, ele1)
        gv.shape_layer('下移一层')
        gv.shape_layer('置于底层')
        gv.shape_layer('上移一层')
        gv.shape_layer()

        time.sleep(3)
Beispiel #23
0
    def test_ss_merge_wrap(self):
        logging.info('==========test_ss_merge_wrap==========')
        gv = GeneralView(self.driver)
        cv = CreateView(self.driver)
        cv.create_file('ss')
        ss = SSView(self.driver)
        ss.cell_edit()
        x, y, width, height = ss.cell_location()
        for i in range(20):
            self.driver.press_keycode(45)
        self.driver.find_element(
            By.ID, 'com.yozo.office.en:id/formulabar_ok').click()
        ss.tap(x + width * 1.5, y + height * 2.5)
        x1, y1 = gv.find_pic_position("drag_point1")
        cv.drag_coordinate(x1, y1, x, y)

        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.swipe_options(ele, 'up')
        ss.cell_merge_split()
        ss.cell_merge_split()
        ss.cell_auto_wrap()
        ss.cell_auto_wrap()
        time.sleep(1)
Beispiel #24
0
    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 ')
Beispiel #25
0
    def test_wp_shape_pop_menu_all(self, type1='wp'):
        cv = CreateView(self.driver)
        cv.create_file(type1)
        wp = WPView(self.driver)
        time.sleep(1)
        wp.pinch()
        wp.group_button_click(' Insert ')
        wp.insert_shape(type1, index=3)
        wp.fold_expand()
        touch(wp.template_object('rotate_free.png'))
        touch(wp.template_object('editText.png'))  # 编辑文字
        touch(wp.template_object('rotate_free.png'))
        touch(wp.template_object('copy.png'))  # 复制
        touch(wp.template_object('rotate_free.png'))
        touch(wp.template_object('cut.png'))  # 剪切
        touch(wp.template_object('point.png'))
        touch(wp.template_object('paste.png'))  # 粘贴
        touch(wp.template_object('rotate_free.png'))
        swipe(wp.template_object('editText.png'),
              wp.template_object('copy.png'))
        touch(wp.template_object('rotate_90.png'))
        touch(wp.template_object('rotate_free.png'))
        touch(wp.template_object('delete.png'))  # 删除

        time.sleep(10)
Beispiel #26
0
    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)
Beispiel #27
0
 def insert_one_shape(self, type):  # 将矩形 Insert wp中
     cv = CreateView(self.driver)
     cv.create_file(type)
     wp = WPView(self.driver)
     wp.group_button_click(' Insert ')
     wp.get_element(
         '//*[@resource-id="com.yozo.office.en:id/yozo_ui_%s_option_id_insert_shape"]'
         '/android.widget.FrameLayout[3]' % type).click()
Beispiel #28
0
    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)
Beispiel #29
0
 def test_ppt_format(self):
     logging.info('==========test_ppt_format==========')
     cv = CreateView(self.driver)
     cv.create_file('pg')
     pg = PGView(self.driver)
     pg.group_button_click(' Edit ')
     for i in FORMAT:
         pg.edit_format(i)
     time.sleep(3)
Beispiel #30
0
 def test_ppt_template(self):
     logging.info('==========test_ppt_template==========')
     cv = CreateView(self.driver)
     cv.create_file('pg')
     pg = PGView(self.driver)
     pg.group_button_click('编辑')
     for i in range(11):
         pg.edit_template(i)
     time.sleep(3)