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("文章已发布"));
         
      }
  • 相关阅读:
    去除 SQL Server 查询结果中的两边空格
    Ubuntu 中安装 Oracle 10g
    不同格式的下拉列表框
    闲来无趣,写了个简单的JavaScript验证码
    Ubuntu 任务前后台调度管理
    C#数据类型转换,Convert
    OleDbType,C#,access 对应数据类型,互相对应
    SQL 将查询出的表当做 value 插入到表中
    asp.net mvc && asp.net 页面跳转
    asp.net mvc 与 asp.net结合(asp.net mvc 技巧)
  • 原文地址:https://www.cnblogs.com/tobecrazy/p/3947086.html
Copyright © 2011-2022 走看看