首页 > 其他分享 >Selenium测试时富文本编辑区输入方法

Selenium测试时富文本编辑区输入方法

时间:2022-09-19 20:35:49浏览次数:82  
标签:body 文本编辑 时富 frame driver 内容 Selenium 输入

用Selenium+python编写自动测试脚本,因为页面中内容编辑使用ckEditor富文本编辑,不知道如何输入内容。

方法一:执行JS脚本,ckEditor编辑区内容输入成功,校验提示内容为空

通过上网查找,一种方法是使用Selenium执行JavaScript脚本的方法修改富文本编辑区的内容。

由于富文本编辑器都包含iframe,所为第一步首先是切换frame:

driver.switch_to.frame(driver.find_element(By.CLASS_NAME, 'cke_wysiwyg_frame'))

然后执行JavaScript脚本:

test_js = 'document.body.innerHTML="%s"' % ("测试切换frame能否实现富文本编辑")

driver.execute_script(test_js)
测试后发现富文本编辑区内容是发生了变化,但是对应的编辑内容校验总是通不过。

方法二:将sendKeys用于ckeditor文本区域的body对象

于是使用第二种方法通过对富文本编辑区中的body进行sendKey()的方式进行内容输入,具体代码实现如下:

driver.switch_to.frame(driver.find_element(By.TAG_NAME, 'iframe'))
content_body = driver.find_element(By.TAG_NAME, 'body')
content_body.send_keys(content)

执行完成后不要忘记再返回frame的上层内容页面。代码如下:

self.driver.switch_to.default_content()

这种方式解决了ckEditor富文本内容输入成功通过内容的校验。

参考网文:

selenium编辑器输入  https://www.cnblogs.com/simon1993/p/16353435.html

Python自动化输入文本selenium自动化测试在富文本中输入信息的方法  https://blog.csdn.net/Ghjkku/article/details/123707485

java中sendkeys_javascript – 如何使用java selenium将sendKeys用于ckeditor文本区域

https://blog.csdn.net/weixin_39874379/article/details/114784651

标签:body,文本编辑,时富,frame,driver,内容,Selenium,输入
From: https://www.cnblogs.com/xupeixuan/p/16708952.html

相关文章

  • 13.1 反射 13.2selenium键盘事件13.3文件上传13.4滚动条操作 13.5鼠标事件13.6验证码
    13.1反射#什么是反射?#如果有一个变量名,是字符串的数据类型,你能获取到这个变量的值吗?#反射方法:classStudent:def__init__(self):self.name='张三'......
  • 12.1初识selenium
    importtime#通过selenium操作浏览器,必须有一个浏览器的驱动对象fromseleniumimportwebdriver#2.配置不同的驱动对象#3.建议下载好放在python\scripts目录下driver=......
  • Selenium选择器学习
    Selenium选择器推荐用CSS选择器 Ifyoudon’tcareabouttheorderingofchildelements,youcanuseanattributeselectorinseleniumtochooseelementsbase......
  • Selenium 打包为.exe执行
    前言:不依赖环境执行,拓展UI自动化使用的场景 一、项目结构介绍case:测试用例次存放目录config:主要存放yaml文件配置ele:元素的定位以及执行动作tools:HTMLTestRunner......
  • 干货 | JavaScript脚本注入,完成Selenium 无法做到的那些事
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取当webdriver遇到无法完成的操作时,可以使用JavaScript来完成,webdriver提供了execute_scr......
  • 浏览器生成cookie下次继续使用这cookie selenium undetected_chromedriver
    #-*-coding:utf-8-*-importjsonimportosimportsslimportsysimporttimeimportundetected_chromedriverasucfromseleniumimportwebdriverpath=os......
  • 基于Selenium Grid搭建自动化并行执行环境
    每天进步一点点,关注我们哦,每天分享测试技术文章本文章出自【码同学软件测试】码同学公众号:自动化软件测试,领取资料可加:magetest码同学抖音号:小码哥聊软件测试Selenium......
  • 关于selenium之 定位以及切换iframe跨域处理
    很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug也可以看到,就是定位不到,这种情况很有可能是frame在搞鬼(原因之一,改天专门说说定位不......
  • vue3.0富文本编辑器vue-quill-editor
    1、安装npminstall@vueup/vue-quill@alpha--save2、引入main.js中全局引入import{QuillEditor}from'@vueup/vue-quill'import'@vueup/vue-quill/dist/vue......
  • Selenium 教程第 3 部分
    Selenium教程第3部分我真的很抱歉放弃这部续集。实际上,我在写这篇文章的时候就失去了动力,想着谁会去读它,甚至会喜欢它。但是看到您的一些支持者喜欢这个故事或添加到......