def test_effcts_01_music(self): """复杂操作-添加配乐.""" sc.logger.info('复杂操作-添加配乐') fun_name = 'test_effcts_music' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"多段配乐"') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('多段配乐')).click() sc.logger.info("循环添加3个'配乐'") for i in range(3): ba.loop_add_music() time.sleep(1) sc.capture_screen(fun_name, self.img_path) sc.logger.info('确认添加') sc.logger.info('确定') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name(iOS_elements.el_confirm_btn)).click() sc.logger.info('复杂操作-添加配乐测试完成')
def test_proportion_01(self): '''剪辑-切换到比例.''' sc.logger.info('剪辑-切换到比例') fun_name = 'test_edit_proportion' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"比例"') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("比例和背景")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('切换到"比例tab"') try: WebDriverWait(sc.driver, 5, 1).until(lambda x: x.find_element_by_name( iOS_elements.btn_bg_pro)).click() sc.capture_screen(fun_name, self.img_path) except TimeoutException: sc.logger.info('已经在"比例tab"') sc.logger.info('剪辑-进入比例页面测试完成')
def test_export_01_add(self): """导出-添加镜头.""" sc.logger.info('导出-添加镜头') fun_name = 'test_export_add' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('从相册添加') ba.clip_add('相册') sc.capture_screen(fun_name, self.img_path) sc.logger.info('拍摄添加镜头') ba.clip_add('拍摄') sc.capture_screen(fun_name, self.img_path) sc.logger.info('导出-添加镜头测试完成')
def test_edit_transition_01(self): """剪辑-进入转场.""" sc.logger.info('剪辑-进入转场') fun_name = 'test_edit_transition' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“转场icon”') try: WebDriverWait(sc.driver, 5, 1).until(lambda x: x.find_element_by_name( iOS_elements.btn_transition_icon)).click() sc.capture_screen(fun_name, self.img_path) except TimeoutException: sc.logger.info('只有一个镜头,无法使用转场') return True sc.logger.info('剪辑-进入转场测试完成')
def test_clips_add_02(self): """剪辑-添加镜头-拍摄添加.""" sc.logger.info('剪辑-添加镜头-拍摄添加') fun_name = 'test_edit_clips_shot' sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('拍摄添加镜头') ba.clip_add('拍摄') sc.capture_screen(fun_name, self.img_path) sc.logger.info('退出预览页') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_xpath(iOS_elements.el_pre_clo)).click() sc.logger.info('确定退出') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('保存并退出')).click() try: WebDriverWait(sc.driver, 10, 1).until( lambda el: el.find_element_by_xpath('//XCUIElementTypeButton[@name="1"]')).click() except TimeoutException: sc.logger.info('返回首页后,无广告弹出') sc.logger.info('剪辑-添加镜头-拍摄添加测试完成')
def test_edit_collage_01_img(self): """剪辑-画中画-图片添加.""" sc.logger.info('剪辑-画中画-图片添加') fun_name = 'test_edit_collage_img' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"画中画"') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name('画中画')).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('添加图片画中画') ba.collage_add('图片') sc.capture_screen(fun_name, self.img_path) sc.logger.info('确认添加') ba.effect_add_confirm() sc.logger.info('剪辑-画中画-图片添加测试完成')
def test_edit_sound_01_rec(self): """剪辑-配音-录制.""" sc.logger.info('剪辑-配音-录制') fun_name = 'test_edit_sound_rec' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('左滑并点击"配音和音效"') el_loc = WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('画中画')) ba.swipe_left(el_loc, 0.3, 300) WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('配音和音效')).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('删除已添加的配音或音效') try: WebDriverWait(sc.driver, 3, 1).until( lambda x: x.find_element_by_accessibility_id(iOS_elements.btn_rec_start)) except TimeoutException: sc.logger.info('当前位置已添加配音或音效,删除后录制') sc.driver.find_element_by_name('删除').click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('"录制"一段音频') ba.sound_rec_add() sc.capture_screen(fun_name, self.img_path) sc.logger.info('确认添加') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name(iOS_elements.el_confirm_btn)).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('剪辑-配音-录制添加测试完成')
def test_clips_add_03(self): """剪辑-添加镜头-放弃.""" sc.logger.info('剪辑-添加镜头-放弃') fun_name = 'test_edit_clips_cancel' sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"添加镜头"按钮') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name(iOS_elements.btn_clip_add)).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('选择相册') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('相册')).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('勾选镜头') ba.gallery_clip_add('视频', 2) sc.logger.info('左上角返回') sc.driver.find_element_by_name(iOS_elements.gallery_back).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('确定放弃') try: WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name('确认')).click() sc.capture_screen(fun_name, self.img_path) except TimeoutException: sc.logger.error('没有勾选中镜头,需要手动再验证!') return False sc.logger.info('剪辑-放弃添加镜头-测试完成')
def test_clip_edit_function(self): """剪辑-镜头编辑-功能遍历.""" sc.logger.info('剪辑-镜头编辑-功能遍历') fun_name = 'test_clip_edit_function' sc.logger.info('点击创作中心主按钮') ba.home_enter() sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_home_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('功能遍历') ba.clip_fun_loop() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“存草稿”按钮') WebDriverWait( sc.driver, 5, 1).until(lambda el: el.find_element_by_name("存草稿")).click() sc.logger.info('剪辑-镜头编辑-功能遍历完成')
def test_music_01_add(self): """预览页-配乐.""" sc.logger.info('配乐操作相关') fun_name = 'test_music_add' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“主题·配乐”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("主题·配乐")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('配乐相关操作') ba.preview_music() sc.capture_screen(fun_name, self.img_path) sc.logger.info('预览页-配乐测试完成')
def test_edit_music_02(self): """剪辑-多段配乐-删除.""" sc.logger.info('剪辑-多段配乐-删除') fun_name = 'test_camera_music_del' sc.logger.info('点击草稿封面') try: ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) except: sc.logger.info('关闭广告') WebDriverWait(sc.driver, 5, 1).until(lambda el: el.find_element_by_name( iOS_elements.btn_ad_clo)).click() ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"多段配乐"') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name('多段配乐')).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('当前视频已经有配乐,删除原有音乐') sc.driver.find_element_by_name('删除').click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('确定') WebDriverWait(sc.driver, 5, 1).until(lambda x: x.find_element_by_name( iOS_elements.el_confirm_btn)).click() sc.logger.info('剪辑-多段配乐-删除测试完成')
def test_edit_music_01(self): """剪辑-多段配乐-添加.""" sc.logger.info('剪辑-多段配乐-添加') fun_name = 'test_music_add' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info("添加一段'配乐'") ba.effects_music() sc.capture_screen(fun_name, self.img_path) sc.logger.info('确认添加') ba.effect_add_confirm() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“存草稿”按钮') WebDriverWait( sc.driver, 5, 1).until(lambda el: el.find_element_by_name("存草稿")).click() try: WebDriverWait(sc.driver, 10, 1).until(lambda el: el.find_element_by_xpath( '//XCUIElementTypeButton[@name="1"]')).click() except TimeoutException: sc.logger.info('返回首页后,无广告弹出') sc.logger.info('剪辑-多段配乐-添加测试完成')
def test_sticker_01(self): """剪辑-动画贴纸.""" sc.logger.info('剪辑-进入动画贴纸') fun_name = 'test_edit_sticker' sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“素材·效果”') WebDriverWait( sc.driver, 5, 1).until(lambda x: x.find_element_by_name("素材·效果")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“贴纸”') WebDriverWait(sc.driver, 5, 1).until(lambda x: x.find_element_by_name("贴纸")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('剪辑-进入动画贴纸测试完成')
def test_edit_filter(self): """剪辑-滤镜下载/使用.""" sc.logger.info('剪辑-滤镜下载/使用') fun_name = 'test_edit_filter' start_x = self.width // 2 start_y = self.height // 8 start_bottom = self.height - start_y sc.logger.info('打开一个草稿视频') ba.home_first_click('更多草稿') sc.logger.info('点击草稿封面') ba.open_draft(iOS_elements.el_studio_draft) sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“镜头编辑”') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("镜头编辑")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击"滤镜"') WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("滤镜")).click() sc.logger.info('下载更多') try: sc.driver.find_element_by_name('下载更多').click() except NoSuchElementException: sc.logger.info('右滑一些,再选择下载更多') el_fliter = sc.driver.find_element_by_name("缓流") coord_x = el_fliter.location.get('x') coord_y = el_fliter.location.get('y') sc.swipe_by_ratio(coord_x, coord_y, 'right', 0.5, 500) sc.driver.find_element_by_name('下载更多').click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('下拉刷新') ba.refresh('down', 0.3, 500, 1) sc.logger.info('下载并使用滤镜') while True: try: sc.driver.find_element_by_name(iOS_elements.el_store_download2).click() break except NoSuchElementException: sc.logger.info('当前页面已无未下载主题') sc.swipe_by_ratio(start_x, start_bottom, 'up', 0.5, 300) sc.logger.info('使用滤镜') WebDriverWait(sc.driver, 20, 1).until( lambda x: x.find_element_by_name("使用")).click() WebDriverWait(sc.driver, 5, 1).until( lambda x: x.find_element_by_name("应用于全部镜头")).click() sc.capture_screen(fun_name, self.img_path) sc.logger.info('点击“确认”') sc.driver.find_element_by_name(iOS_elements.el_confirm_btn).click() sc.logger.info('点击“存草稿”按钮') WebDriverWait(sc.driver, 5, 1).until( lambda el: el.find_element_by_name("存草稿")).click() sc.logger.info('剪辑-滤镜下载/使用测试完成')