使用 Selenium 在 textArea 中输入完整的 html

Posted

技术标签:

【中文标题】使用 Selenium 在 textArea 中输入完整的 html【英文标题】:Input full html in textArea using Selenium 【发布时间】:2019-08-23 20:22:23 【问题描述】:

我有一个文本区域,我需要在那里输入完整的 html

在 BDD 中,我将传递文件的路径,但我不知道如何捕获完整的 HTML(带标签)以通过 SendKeys 应用到 Textarea。

我正在使用 Specflow + Selenium + C#

Scenario Outline: Input Disclaimer Filme
  Given I choose the type of disclaymer <type>
  When I open the html file <file>
  Then I send then 

  Examples:
    | type               | file                                  | 
    |    "Cota Capital"  |   "C:\Disclaimers\CotaCapital.html"   |    
    |    "Caucionamento" |   "C:\Disclaimers\Caucionamento.html" |   

方法内部:

driver.FindElement(By.Id("TxtConteudo")).SendKeys(fullHtml);

我想打开文件,读取所有 html,将其保存在某个 var / string 中,然后将其传递给 textArea。

【问题讨论】:

【参考方案1】:

只需阅读内容,然后在您的步骤定义中将其传递到文本区域。

string fullHtml = File.ReadAllText(file);
char tab = '\u0009';
fullHtml = fullHtml.Replace(tab.ToString(), "");
driver.FindElement(By.Id("TxtConteudo")).SendKeys(fullHtml);

【讨论】:

它几乎可以工作。此代码仅在 textarea 中打印 html 的第一行。我试过 fullHtml.Replace("\n", "");不成功 需要做的:char tab = '\u0009'; fullHtml = fullHtml.Replace(tab.ToString(), "");它有效!

以上是关于使用 Selenium 在 textArea 中输入完整的 html的主要内容,如果未能解决你的问题,请参考以下文章

selenium8中元素定位方式

selenium 操作文本框(textarea输入)

测试Selenium录制单元测试脚本

selenium环境搭建-python自动化脚本测试

求助怎样在selenium测试脚本里面为下面这段代码中的textarea赋值 ,就是我现在要对发帖功能测试.

在 PHP 中输​​出图像