Cucumber + Capybara + Selenium:选择文本

2024-02-23

我正在对文本编辑器进行更改,并且需要能够选择文本以使用 JavaScript 对其进行操作。如何使用 Cucumber、Capybara 和 Selenium 选择文本?


我发现了另一个 stackoverflow 问题,讨论如何使用 JavaScript 选择文本。

您可以在 JavaScript 中设置和/或更改用户的文本选择吗? https://stackoverflow.com/questions/4183401/can-you-set-and-or-change-the-users-text-selection-in-javascript

我能够修改他们的脚本,以便能够在 Selenium IDE 的 getEval 调用中工作(如果您以不同的方式使用 Selenium,则可能需要修改它)。我还删除了与 Firefox 无关的代码:

function selectElementContents(el,start,end) {
    var sel = window.getSelection();
    var range = window.document.createRange();
    range.setStart(el,start);
    range.setEnd(el,end);
    sel.removeAllRanges();
    sel.addRange(range);
}
selectElementContents(window.document.getElementById("container").firstChild,10,20)

这允许您选择单个元素内的文本范围。 “Container”是包含文本的元素的 ID,10 和 20 是开始和结束字符的索引。

只需将其压缩为一行,将其添加到 Selenium getEval 语句中,它就会为您选择文本。

如果单个元素中的文本对您来说不够灵活,JavaScript 范围的文档应该可以为您提供所需的额外详细信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cucumber + Capybara + Selenium:选择文本 的相关文章

随机推荐

  • 将数据发送到后台运行的活动

    在活动之间传递数据时遇到问题 ListActivity 正在收集数据 当按下后退按钮时返回到 MainActivity 然后想要通过 onResume 方法获取该数据 但我什么也没得到 如何解决这个问题呢 列表活动 java Overrid
  • Git 在结帐时更改我的文件权限

    我们的工作流程是在本地计算机上开发 将更改提交到中央存储库 然后检查我们需要的该存储库的分支 问题是 Git 会根据签出的用户更改其签出的文件的所有权甚至文件权限 这样做的直接结果是 我们的 CSS 文件在签出后变得不可读 因为 Git 将
  • 使用 C# 命令行 GPG 解密 - 密码?

    我正在使用命令行来加密我发送的文件 但我正在尝试找出如何使用相同的方法来解密它们 如果我运行该命令 系统会提示输入密码 但我看不到使用命令行传递密码的方法 这是我加密文件的方法 var proc new Process proc Enabl
  • 如何从计算引擎访问谷歌驱动器

    我以前没有使用过 GCE 但计划将其用于一些 CPU 绑定的 R 脚本 我看到定价的网络部分说谷歌驱动器有免费的出口和入口 我没有看到任何有关如何从 GCE 中访问我的 google 驱动器的文档 有人可以向我指出这方面的文档吗 我建议使用
  • 两个相同的unordered_map的顺序是否相同?

    换句话说 如果我填两个unordered map or unordered set 具有完全相同内容和相同哈希函数的对象 迭代它们会给出相同的键 值对序列吗 如果是这样 那么它成立的条件是什么 例如相同的散列函数 相同的键 不一定是相同的值
  • 检查两个 DecimalUpDown 控件之间的有效值 - MVVM

    我的窗口中有两个 DecimalUpDown 控件 一个应显示文本框的最大值 另一个应显示最小值 最小控制值不能大于最大控制值 反之亦然 请注意 红色值是错误的 我怎样才能实现这个 我正在使用 MVVM 模式 谢谢 史蒂夫 您应该在视图模型
  • 在 ggplot2 的图中添加一个指向 x 轴的箭头

    我的目标是获得一个带有指向 x 轴的文本的箭头来标记平均词频 我一生都无法弄清楚如何在 ggplot2 中的绘图区域之外获取箭头或文本 这是我的代码 ggplot SUMMARY PCTDIFF aes principle pctdiff
  • MySQL 错误代码:1064。您的 SQL 语法有错误

    真的 可能有什么问题吗 它并没有变得更简单 整个查询 line 1 use foo line 2 line 3 select from test table 1 错误代码 您的 SQL 语法有错误 查看对应的手册 到您的 MySQL 服务器
  • CGEventTapCreate 因“按键按下”事件而神秘崩溃

    我在用着CGEventTapCreate当我的应用程序运行时 从 iTunes 中 窃取 媒体密钥 我传递给的回调内部的代码CGEventTapCreate检查该事件 如果发现它是媒体键之一 则将适当的通知发布到默认通知中心 现在 如果我发
  • C#:如何比较字典值?

    我有一个Dictionary
  • 在 React 应用程序中添加 add sass/scss 的最佳方法是什么?

    我发现 create react app 文档建议使用 node sass 但 npm 中的包说 LibSass 和 Node Sass 已弃用 那么 如果有人可以提供帮助 那么在 React 项目中安装 sass 的最佳方法是什么 我一直
  • 用于客户端层单元测试的模拟 Web 服务

    我有一个业务规则 Visual Studio 类库 NET 2 0 项目 它依赖于 Dynamics Crm Web Services 一个经典的 SOAP Web 引用 而不是 WCF 端点 我想对这些业务规则进行单元测试 而无需背后有真
  • 删除加权有向图中的循环

    这是我其他帖子的后续问题 具有大小约束的聚类算法 https stackoverflow com questions 30112428 algorithm for clustering with size constraints 我正在研究
  • sscanf() 的更安全但易于使用且灵活的 C++ 替代方案

    当我需要从一堆字符串中扫描值时 我经常发现自己又回到了 C 语言sscanf 严格来说是因为它的简单性和易用性 例如 我可以非常简洁地从字符串中提取几个双精度值 string str double val1 val2 if sscanf s
  • 无法重新声明类 sfconfig

    我在 Windows XP 上运行 Symfony 1 2 9 和 PHP 版本 5 2 11 我安装了 APC 版本 3 0 19 我可以运行 PHP 脚本来证明 apc 工作正常 有效 但是 当我尝试在 symfony 操作中使用 AP
  • jQuery 使用 :not 从 div 中选择文本

    我做了一个小提琴 http jsfiddle net hAzJq http jsfiddle net hAzJq 如何选择 div 内的文本而不是 span 内的文本 alert div not span text Use contents
  • 从ansible中注册的变量中检索键的值

    我正在编写各种剧本 用于在 AWS 中配置用户 组 策略等 目前 我正在尝试编写一个任务 从给定的 AWS IAM 账户中删除所有访问密钥 要使用 ansible 中的 iam 模块正确执行此操作 您必须指定要禁用的 AWS 访问密钥 该脚
  • jquery 只捕获第一个按键?

    我有这个代码 j regfname keypress function alert Handler for keypress called 并且只想执行一次 或仅在第一次按键时执行 最理想的方法是什么 您可以使用 jQueryone htt
  • 快速将字符串转换为 CLLocationCooperative2D

    使用 Firebase 作为后端 我有一系列纬度和经度坐标字符串 如何将它们转换为 CLLocationCooperative2D 以便我可以将它们用于注释 这是每次更新时从 Firebase 获取信息的代码 var UpdateRef F
  • Cucumber + Capybara + Selenium:选择文本

    我正在对文本编辑器进行更改 并且需要能够选择文本以使用 JavaScript 对其进行操作 如何使用 Cucumber Capybara 和 Selenium 选择文本 我发现了另一个 stackoverflow 问题 讨论如何使用 Jav