使用 Selenium Webdriver 与 Stripe Card Element iFrame 交互 - Cucumber/Selenium Java

2024-02-14

我有一个表单,我想在 Java 中使用 Cucumber 和 Selenium Webdriver 来自动化 - 在这个表单中,我们有一个从 Stripe 中使用的卡片元素。我们称之为 div,剩下的由 stripe 完成。我不确定这是否是 iFrame,但是当我使用

Hooks.driver.findElement(By.xpath("xpathOfTheCardNumberField")).sendKeys("123");

命令,它不与其交互,并在控制台日志中返回“无法定位元素”错误。

我已经要求我们的前端也许尝试向字段添加一些 ID 或名称标签,但他告诉我他无法与卡元素内部字段的标记进行交互,只能与卡元素本身进行交互 - 正如 Stripe 处理的那样与其他一切。

附件是卡片元素的图片,以及相关卡片元素的标记。

是否有可能让 Selenium 与该元素交互?

任何帮助是极大的赞赏。卡元前端 https://i.stack.imgur.com/VtifI.png

标记卡片元素 https://i.stack.imgur.com/Z8eCU.png


为了完整性,对法比奥接受的答案进行了额外的跟进。

self.browser = webdriver.Chrome()

# fill in the other fields as usual (i.e. self.browser.find_element_by_id(...))

# When you arrive at the iframe for the card number, exp. date, CVC, and zip:
self.browser.switch_to.frame(frame_reference=self.browser.find_element(By.XPATH, '//iframe[@name="__privateStripeFrame3"]'))

# This switches to the iframe, which Selenium can now start selecting elements from.

# The remaining form elements can be found by name

self.browser.find_element_by_name('cardnumber').send_keys('4242 4242 4242 4242')

# And find the other elements the same way as above (exp-date, cvc, postal).
# Finally, switch back to the default content to select the submit button

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

使用 Selenium Webdriver 与 Stripe Card Element iFrame 交互 - Cucumber/Selenium Java 的相关文章

  • 如何改变HTML5视频的播放速度?

    如何更改 HTML5 中的视频播放速度 我查过视频标签的属性 https www w3schools com html html5 video asp在 w3school 但无法做到这一点 根据这个网站 http www chipwreck
  • 如何从顺序键盘导航中删除 Vuetify 附加图标

    在带有 Vuetify 的 Vue js 应用程序中 我有一组用v text field并且其中有一个append icon为了切换文本可见性 如下所示
  • 如何使 jQuery 向上动画

    我有一些 jquery 运行得相当好 但是当我将鼠标悬停在有问题的元素上时 底部向下扩展 这并不意外 但不是所需的效果 我希望元素的底部保持静止 而元素的顶部向上扩展 如果您想查看我目前拥有的内容 您可以导航至http demo ivann
  • 电话号码上未拾取结构化数据

    我在网站上有以下代码片段 当我通过 Google 结构化数据测试工具运行此程序时 它不会获取电话号码 我不确定我哪里错了 div class telephone number p Call Us a href 07749 918 143 a
  • 加载另一个 JS 脚本后加载

    这是我的代码 very big js file lots of html stuff 问题是 这些是异步加载的 有没有办法等待第二个脚本直到第一个脚本加载 如果您使用 jQuery 有一个非常简单的方法可以通过获取脚本 https api
  • MYSQL 按喜欢/不喜欢和受欢迎程度排序

    我有评论表 其中包括喜欢和不喜欢的内容 现在我在正确的顺序上遇到了问题 实际上 我的系统在顶部显示了最多点赞的评论 我正在 youtube 上寻找类似系统的东西 这意味着 100like 100dislikes 的评论的顺序高于 1 1 我
  • IE 位置问题:绝对

    我有这段代码 它在 Firefox 中运行得很好 但在资源管理器上会向右射击 这段代码有什么我看不到的问题吗 感谢您的帮助 div a href http www mysite com img src images sponsor png
  • 获取一行中的最后一个 li jQuery

    我们有一个简单的ul ul li some text li li some some text li li text more li li text here li ul ul text align center width 100px l
  • CSS“内容”不起作用

    我想通过 CSS 添加该段落的文本 而不是在 HTML 中 因为它会随着网站的响应能力而变化 现在我无法让它工作 我想知道CSS是否有问题 另外 这是唯一可以做到的方法 使用纯 HTML 和 CSS 还是有另一种方法来定位文本并根据每个分辨
  • Javascript 考虑 colspan 和 rowspan 获取表格单元格二维数组

    我有一个带有 colspan 和 rowspan 的表 如下所示 5x3 表 table tr td 1 td td 2 td td 3 td td 4 td tr tr td 5 td td 6 td td 7 td tr tr td 8
  • 当动态列的 ng-prime 数据表中的行更新时如何更新行背景颜色?

    我想在行更新时更改行颜色 记录更新成功时如何设置行背景颜色 html
  • 如何在FireFox中检查用户访问麦克风的权限是否被拒绝

    有没有办法查明用户是否拒绝或允许媒体设备的权限 例如 Firefox 中的麦克风 摄像头 在 Chrome 中 我可以使用 navigator permissions query 检查这一点 但在 Firefox 中会失败并出现 TypeE
  • 如何在命令提示符下运行 Selenium C# 测试?

    我有一些 C 测试 我想从命令提示符运行这些测试 我怎样才能运行这些测试 请帮我 如果您正在使用视觉工作室2012 那么你将使用vstest console exe运行类似 Visual Studio 的测试 例如 C Program Fi
  • 如何使两个
    ...
    位于同一行?

    我的意思是 两个标签具有相同的高度 对所有 div 尝试这个 display inline block
  • 使用他们的 API 创建一个基本的 MailChimp 注册表单

    我是 MailChimp 的新手 需要一些帮助 通过他们的基本时事通讯注册表单 您只需将一些预先打包的 HTML 嵌入到您的页面中即可 然而 这样做的问题是 单击 提交 会重定向到 MailChimp 页面 我不想重定向到 MailChim
  • 将 DIV 堆叠在一起?

    是否可以堆叠多个 DIV 例如 div div div div div div div div div div 那么所有这些内部 DIV 都具有相同的 X 和 Y 位置吗 默认情况下 它们都在彼此下方 将 Y 位置增加了上一个 DIV 的高
  • :目标选择器不适用于选项标签

    我试图在这里帮助一位 StackOverflow 成员 我发现 CSS target选择器不适用于选项标签 我创建了一个示例来说明使用w3schools 教程 http www w3schools com cssref tryit asp
  • 如何防止 CSS 或 jQuery 中单词和标点符号之间的换行

    我在一个段落中有一些文字 我的问题是 当标点符号位于单词末尾时 有时可以换行到下一行 像这样 This is the text This is a new line 我可以用 CSS 或 jQuery 解决这个问题吗 如果您不在单词和标点符
  • 保留以下文本的标题

    我正在使用 css 列计数功能将我的部分分成两列 在一个页面上 我在第一列的底部有一个 h3 标题 在下一列的顶部有一个 p 段落 我想保留该段落的前几句话的标题 我可以将其与整个段落一起包装在使用 inline block 样式的 div
  • Chrome 已关闭,并出现错误 ERROR:network_change_notifier_win.cc(141)] WSALookupServiceBegin 失败,原因为:0

    我的笔记本电脑操作系统是 windows 10 我使用 selenium webdriver 和 Python 当我通过脚本打开chrome浏览器时 加载网页后chrome就关闭了 下面是我的python代码和错误 from seleniu

随机推荐

  • 在脚本的Google表格中获取带有#NA的公式的错误注释

    我找不到任何方法来获取失败公式的错误消息 实际上它提供了更多信息 而只是错误代码 因为 NA 始终为 7 NA 可能意味着不同的东西 我希望能够识别哪些细胞具有哪种类型的 NA getNote不起作用 有办法吗 我使用 IMPORTXML
  • 错误:未定义标签,如何在java中使用此代码中的标签语句?

    我在Java教科书中读到任何语句都可以被标记并且可以与break一起使用 但是在尝试此代码时 我收到错误未定义标签 stackoverflow 的伙计们在将这个问题标记为重复之前先等待 我已经检查了这些问题 但没有一个解释这个问题 publ
  • 如何从文件类型获取文件扩展名?

    我有一个文件名列表如下 files dl files 4j55eeer wq3wxxpiqm jpg home Desktop hjsd03wnsbdr9rk3k kd0dje7cmidj0xks03nd8nd8a3 问题是大多数文件的文件
  • SAP Crystal Reports Viewer 不显示在浏览器中

    我拥有一个使用框架 4 5 的 ASP NET Web 项目 已安装并实施适用于 VS2012 Crystal Reports Developer 的 SAP 报表 在本地报告中 它可以在浏览器 Chrome Firefox IE 中正常工
  • 有没有 numpy group by 函数?

    numpy 中是否有任何函数可以按第一列将该数组分组到下面 我在互联网上找不到任何好的答案 gt gt gt a array 1 275 1 441 1 494 1 593 2 679 2 533 2 686 3 559 3 219 3 4
  • Bootstrap 3 中的垂直对齐字形

    我有一个这样的字形 div class col xs 4 col sm 2 span class glyphicon glyphicon circle arrow up glyphicon large span div glyphicon
  • 在 WordPress 中获取页面(无帖子)的精选图像

    我需要显示所有页面的特色图像 而不是帖子 我有这个代码 img src class header img alt 但这仅显示一张特色图像 太感谢了 您可以简单地使用 WP Query 来获取它 loop new WP Query array
  • Yii2 自定义分页联合查询

    我想在 Yii2 中实现自定义分页 这是我的代码 connection Yii app gt getDb name GET name query SELECT name FROM user WHERE name LIKE name UNIO
  • Python 将十进制转换为十六进制

    我这里有一个函数可以将十进制转换为十六进制 但它以相反的顺序打印它 我该如何解决它 def ChangeHex n if n lt 0 print 0 elif n lt 1 print n else x n 16 if x lt 10 p
  • jQuery:无限滚动和后退按钮

    好吧 我知道这会给每个人带来问题 也给我带来问题 我在客户的网站上使用无限滚动插件 结合同位素插件按顺序加载他们的产品 问题是 因为他们有 1000 种产品 任何浏览该网站然后点击进入产品的人 当他们点击按后退按钮 它们将返回到顶部 或第一
  • 将多个文件导入到 R 中的单个合并数据框中

    我有 8 个 CSV 文件都在同一目录中 需要将它们导入到 R 中的单个数据框中 它们都遵循相同的命名约定 dataUK 1 csv dataUK 2 csv 等 并且具有完全相同的功能列的结构 我已经成功地使用以下方法创建了所有文件名 包
  • VS 2012 中的可变参数模板(Visual C++ 2012 年 11 月 CTP)

    我安装了Visual C 编译器 2012 年 11 月 CTP http www microsoft com en us download details aspx id 35515并创建了一个 C 控制台项目 我把这个写在 templa
  • 单态与单态

    当人们使用单态模式而不是单例来维护全局对象时 会出现什么情况 编辑 我知道什么是单例模式和单态模式 在很多场景中也实现了 Singleton 只是想知道MonoState模式需要实现的场景 案例 例如 我需要在 Windows 窗体应用程序
  • 如何设置 LIBUSB_INCLUDE_DIR

    我正在尝试为arm交叉编译libftdi 当我运行 Cmake 时 我得到 CMake Error The following variables are used in this project but they are set to N
  • 在 Iphone SDK 中显示 GPS 可用性和准确性

    如何编程以在 iPhone 中显示 GPS 可用性和准确度级别 并且它必须擦除标签中先前的纬度 经度信息 iOS sdk 中有一个类叫做 CLLocationManager 浏览 XCode 中的文档或查找一些示例 http mobileo
  • Jetpack Compose:如何以编程方式 onClick 将主题从浅色模式更改为深色模式

    TL DR 更改主题并在单击时在浅色和深色主题之间重新组合应用程序 你好 我有一个有趣的问题 我一直在努力解决 希望得到一些帮助 我正在尝试实现一个设置屏幕 让用户更改应用程序的主题 选择与系统设置匹配的深色 浅色或自动 我已成功设置主题动
  • 将值传递给 onclick [重复]

    这个问题在这里已经有答案了 如果我使用循环创建大量 HTML 元素 例如 for i 1 i lt 100 i var my element document createElement td row appendChild my elem
  • jquery Mobile url 添加 # 标签,该标签会破坏 Internet Explorer 中的表单

    大家好 我的问题是我有一个 jquery 移动网站 其链接与普通网站类似 例如 a href http mysite com login Login a 现在 当他们在 Firefox 等中转到该页面时 它会转到 http mysite c
  • c++: LLDB + Python - 如何在 python 脚本中打印 std::string

    我正在尝试 LLDB python 以便更好地将 json 字符串打印到文件中 对于给定的 std string 变量 称为缓冲区 我在 python 断点脚本中尝试了以下操作 以便漂亮地打印到文件中 全部都不成功 json dump fr
  • 使用 Selenium Webdriver 与 Stripe Card Element iFrame 交互 - Cucumber/Selenium Java

    我有一个表单 我想在 Java 中使用 Cucumber 和 Selenium Webdriver 来自动化 在这个表单中 我们有一个从 Stripe 中使用的卡片元素 我们称之为 div 剩下的由 stripe 完成 我不确定这是否是 i