zoukankan      html  css  js  c++  java
  • 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("文章已发布"));
         
      }
  • 相关阅读:
    任务---内部揭秘
    线程
    c#制作com组件供wincc调用
    线程----计算限制的异步操作2
    随笔,聊一聊任务取消
    C#制作Wincc组件进行配方管理(二)
    MongoDB导入导出以及数据库备份111
    浏览器访问页面步骤
    C#中的继承和多态
    网关和路由器的区别
  • 原文地址:https://www.cnblogs.com/tobecrazy/p/3947086.html
Copyright © 2011-2022 走看看