selenium处理rich text(富文本框)

WordPress 的 rich  text

采用js,先让selenium切换到iframe中

driver.switchTo().frame("content_ifr");

然后执行JS

WebElement editor = driver.findElement(By.tagName("body"));
   JavascriptExecutor jsExecutor = (JavascriptExecutor) driver;
   jsExecutor.executeScript("arguments[0].innerHTML = ‘<h1>Selenium Test </h1>I love Selenium <br> this article Post By Selenium WebDriver<br><h2>Create By Young</h2>‘", editor);

为什么是innerHTML?

最后再切换出iframe

driver.switchTo().defaultContent();

 public void post()
  {
      //login();
      WebElement article=driver.findElement(By.xpath("//*[@id=‘menu-posts‘]/a/div[3]"));
      article.click();
      try {
        Thread.sleep(2000);
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
      WebElement newArticle=driver.findElement(By.linkText("写文章"));
      newArticle.click();

      WebElement title=driver.findElement(By.xpath("//*[@id=‘title‘]"));
      title.sendKeys("I love Selenium");

      driver.switchTo().frame("content_ifr");
      WebElement editor = driver.findElement(By.tagName("body"));
      JavascriptExecutor jsExecutor = (JavascriptExecutor) driver;
      jsExecutor.executeScript("arguments[0].innerHTML = ‘<h1>Selenium Test </h1>I love Selenium <br> this article Post By Selenium WebDriver<br><h2>Create By Young</h2>‘", editor);

      driver.switchTo().defaultContent();

      WebElement submit =driver.findElement(By.xpath("//*[@id=‘publish‘]"));
      submit.click();

      try {
        Thread.sleep(3000);
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

     WebElement check=driver.findElement(By.xpath("//*[@id=‘message‘]/p"));
     Assert.assertTrue(check.getText().contains("文章已发布"));

  }
时间: 2024-11-03 20:45:20

selenium处理rich text(富文本框)的相关文章

Selenium Webdriver——JS处理rich text(富文本框)

126邮件正文邮件的rich text 先让selenium切换到iframe中 driver.switchTo().frame(driver.findElement(By.className("APP-editor-iframe"))); 然后执行JS WebElement editor = driver.findElement(By.tagName("body")); JavascriptExecutor jsExecutor = (JavascriptExec

selenium处理富文本框,日历控件等 调用JS修改value值

http://blog.csdn.net/fudax/article/details/8089404 document.getElementById("js_domestic_fromdate").value = "2014-10-10" selenium处理富文本框,日历控件等 调用JS修改value值,布布扣,bubuko.com

Selenium向iframe富文本框输入内容

目录 前言 只输入纯文本 通过JS注入HTML代码 前言 在使用Selenium测试一些CMS后台系统时,有时会遇到一些富文本框,如下图所示: 整个富文本编辑器是通过iframe嵌入到网页中的,手动尝试输入内容,发现内容是输入到iframe页面的body中的, 这种富文本框怎么输入呢? 我们也可以直接在body的源码上点击右键选择Edit HTML,输入相应的html代码,达到向富文本框输入的目的,如下下图: 以下是使用Selenium的操作方法 只输入纯文本 如果只输入不带格式的纯文本,可以先

selenium向富文本框填写内容的几种方式

富文本框如果是iframe,则用下 1.先跳转到irame,dr.switchTo().frame(wtext); 然后用js JavascriptExecutor jsExecutor = (JavascriptExecutor) dr; jsExecutor.executeScript("arguments[0].innerHTML = '<p align=\"center\"><strong>钜计划协议</strong></p&

操作富文本框

富文本框常见的技术用到了Frame标签,并且在Frame里面实现了一个完整的HTML网页结构. 方法一: #!usr/bin/env python #-*- coding:utf-8 -*- """ @author: sleeping_cat @Contact : [email protected] """ #操作富文本框 from selenium import webdriver import unittest,traceback,time

webdriver高级应用- 操作富文本框

富文本框的技术实现和普通的文本框的定位存在较大的区别,富文本框的常见技术用到了Frame标签,并且在Frame里面实现了一个完整的HTML网页结构,所以使用普通的定位模式将无法直接定位到富文本框对象. 方法一:调用WebDriver的send_key()方法实现 #encoding=utf-8 from selenium import webdriver import unittest, time, traceback from selenium.webdriver.support.ui imp

kindeditor富文本框,上传文件后,显示文件名称

kindeditor作为一个应用广泛富文本框,我们经常会利用到它,然而在使用的过程中,发现有的地方使用起来很不方便,例如本文要说的,用户上传文件之后,默认只有文件URL,没有文件说明,如图: 点击确定之后,内容中显示的只是一串很长的地址,这并不是我们想要的. 更多的时候,我们只是希望它这里能默认显示文件名称,只有在文件说明里,填写了文件名称,在内容里面才会以名称的形式呈现.这个时候,我们就要给它做个小手术,来完善它,下面贴出代码: 1.修改asp.net/upload_json.ashx文件,大

基于bootstrap的富文本框——wangEditor【欢迎加入开发】

先来一张效果图: 01. 引言 老早就开始研究富文本框的东西,在写完<深入理解javascript原型与闭包>之后,就想着要去做一个富文本框的插件的例子. 现在网络上开源的富文本框插件非常多,一搜索一大堆,但是基于bootstrap的还不多,现在只有一个“bootstrap-wysiwyg”,老外写的,没有一个汉字,大家可以fork一下源码看看,写的非常简洁,压缩之后不到10KB,非常厉害!我也还没来得及研究,一定要看一下. 02. wangEditor 老外的东西,满地英文,给程序猿用着还可

基于bootstrap的富文本框——wangEditor【欢迎增加开发】

先来一张效果图: 01. 引言 老早就開始研究富文本框的东西,在写完<深入理解javascript原型与闭包>之后,就想着要去做一个富文本框的插件的样例. 如今网络上开源的富文本框插件许多,一搜索一大堆,可是基于bootstrap的还不多.如今仅仅有一个"bootstrap-wysiwyg".老外写的,没有一个汉字.大家能够fork一下源代码看看,写的很简洁.压缩之后不到10KB.很厉害!我也还没来得及研究,一定要看一下. 02. wangEditor 老外的东西,满地英文