查看页面结构,编辑器嵌入iframe中
需要首先切换到iframe,调用封装好的方法
- # iframe 切换
- def switch_iframe(self, loc, timeout=20, poll_fre=0.5):
- logger.info('iframe 切换操作:')
- try:
- # 切换 == index\name\id\WebElement
- # loc = ('xpath','iframe路径')
- # WebDriverWait(self.driver, timeout, poll_fre).until(
- # EC.frame_to_be_available_and_switch_to_it(loc))
- time.sleep(2)
- iframe = self.get_element(loc)
- self.driver.switch_to.frame(iframe)
- time.sleep(0.5)
- logger.info('iframe 切换成功')
-
使用js方法讲文本输入编辑器中
- # 编辑器内容输入
- def input_rich_txt(self,loc,value):
- try:
- element = self.get_element(loc)
- # test_js = f'document.getElementsByTagName("{loc}").contentWindow.document.body.innerText="{value}";'
- # test_js = f"document.querySelector('{loc}').contentDocument.querySelector('body').innerHTML='{value}'"
- test_js = "if(arguments[0].contentEditable === 'true') {arguments[0].innerText = '%s'}" %value
- self.driver.execute_script(test_js, element)
- logger.info(f'富文本位置{loc}输入成功内容:{value}')
- except:
- logger.exception(f'富文本位置{loc}输入失败内容:{value}')
- self.save_page_shot('富文本位置输入失败')
- raise
-
-
用例设计参考