问题标签 [pageobjects]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Webdriver SwitchTo()
我是 webdriver 的初学者,开始学习页面对象模型
这是我使用的代码:
这不断抛出错误。
SwitchTo
从来没有作为选项给出,任何人都可以告诉我为什么,请告诉我如何获得SwitchTo
作为选项。提前致谢
ruby - 如何获取 page_object 元素的属性值?
想象一下我有一个像这样的图像:
获取其类值的方法可能是:
行。我正在使用 page_object gem,假设我将图像作为元素,例如:
要获取属性值,我可以使用:
...但我收到了弃用警告:
如何class
使用 page_object 元素获取值?当然答案很简单,但我没有找到。你能告诉我路吗?
先感谢您!
java - Selenium Webdriver - PageObject 和驱动程序指针
我正在使用 PageObjects 在 Selenium Webdriver 中制作一个测试套件,但我怀疑即使驱动程序指向不同的框架,WebElement 引用的实例是否可以工作?我正在为其编写测试的站点有很多框架(不,我不能停止使用框架:-)),每个站点上的一个框架元素是一个顶栏。我想为那个框架制作一个单独的 PageObject,我可以从包含它的其他 PageObjects 中初始化和使用它。
但是我怀疑当驱动程序移动到另一个框架时您是否可以使用 WebElements。
例子:
- 制作并初始化新的 HomePage PageObject
- 切换到(帧 1)。切换到(frame2)
- 从构造函数中创建一个 TopBar 对象,该对象使用上面的驱动程序位置初始化/实例化元素。我现在在那个名为 elmTopBar 的 PageObject/frame 中引用了一个 WebElement
在 HomePage 中,驱动程序从该框架切换(返回到 frame0)做一些其他工作
我对 elmTopBar 的“旧”引用是否仍然可以从这个驱动程序位置(相同的驱动程序对象)使用,或者我只会在每次驱动程序都指向 frame2 时才能工作(这意味着我必须每次主页需要一些东西时 switchTo + 初始化一个 TopBar 对象顶栏)?
我知道如果我从不同的框架进行元素搜索,它不会在其他框架中找到对象,但我的问题是,当您创建/保存对 WebElement 的引用时,即使在执行 switchTo(frameX ) 与司机。
提前谢谢!
ruby - 如何获取 page_object 元素的 html 源代码?
想象一下,我有一个 div(用 Watir 语言):
我需要里面的 html 代码来做一些“神奇的正则表达式”:)。获取 div html 代码的方法可能是:
行。我正在使用 page_object gem,假设我将 div 作为元素,例如:
要获取里面的 html,我可以使用:
...但我收到了弃用警告:
如何使用 page_object 元素获取 html 代码?正如我之前提出的一些类似问题,当然答案很简单,但我查看了 Cheezy 书、整个 stackoverflow 和页面对象 rubydoc 信息,但我没有找到它。你能告诉我路吗?
先感谢您!
java - PageFactory.initElements 填充了哪些 WebElements?
我正在尝试将PageObject
设计模式与我的 Selenium 测试一起使用,并且我有以下一组 Page 类:
- 一个
PageObject
基类,用于跟踪 WebDriver 和站点的基本 URL。它还具有WebElement
显示在站点的每个页面上的私有资源,例如菜单栏和侧栏链接。有一些公共方法可以访问这些资源,例如登录和注销。 UserRolePage
扩展的类PageObject
。根据登录用户的角色,这些类还有其他私有WebElements
的,一旦用户登录,它们就会在每个页面上持续存在。还有一些公共方法可以访问这些资源。UserLandingPage
扩展类的特定页面(例如)UserRolePage
。这些都有自己的特定页面WebElements
和操作。
当我UserLandingPage
使用该方法创建一个新的:
哪个WebElements
被填充?只是对UserLandingPage
类可见的那些,还是PageFactory
以某种方式查看所有基类并填充这些 WebElement?
cucumber - 使用 cheezy 的页面对象和 watir 时是否可以访问“样式”类型的 css 选择器?
在我的 page.rb 中,我使用div(:select, :css => 'div.active[style="display: block;"]')
的是哪个给我的错误 - Watir::Exception::MissingWayOfFindingObjectException。
在控制台中,document.querySelector("div.active[style='display: block;']")
正确返回对象。我不太确定在哪里查看文档,所以任何帮助将不胜感激。
提前致谢。
webdriver - 使用 PageFactory 将我现有的代码转换为 PageObject 设计模式
我正在使用 Selenium 2 Web Driver 和 C#.Net 创建测试。在阅读了大量 Selenium 文档后,我不确定我是否遵循了正确的设计模式,并且不确定如何使用 PageObject 设计模式进行测试。
这是我在页面上使用的当前代码及其工作
我也告诉过我不能Select
使用 pageFactory 来使用页面元素。
我是否需要按照我的编码方式更改我的代码?任何反馈都会很棒。
telerik - 如何使用 Telerik Test Studio 实现页面对象模型
我正在评估 Telerik Test Studio ( http://www.telerik.com/automated-testing-tools ) 作为 Web 回归工具,并寻找有关设置和使用页面对象模型环境的方法,例如硒。
http://code.google.com/p/selenium/wiki/PageObjects
他们的文档专注于非常脆弱的记录/播放,而且我的谷歌搜索还没有找到相关链接。
java - 如何使用 WebDriver 和页面对象验证页面标题?
我正在尝试编写一种方法来使用页面对象验证页面标题,但我无法做到。在谷歌页面中搜索某些内容后,您能否帮我写一个方法来验证页面标题。
这是我的2节课。
1级
}
2 类
}
您能否帮助在显示搜索结果后如何验证标题
注意:我正在使用 TestNG。
在此先感谢,湿婆奥莱蒂。
webdriver - 将网页上的元素建模为 WebDriver 中的类以进行抽象和重用的理想方法
为了抽象和可重用性,将网页上的元素建模为类的理想方法是什么?
目前,我创建的是一个包含以下成员变量的 BaseElement.java 类:
构造函数:
然后我将这个类扩展到代表网页上某个元素的其他类中。
例如,我有一个扩展 BaseElement.java 的 Button.java 类。
因此,在我的 PageObject 类中,我将使用上述内容:
这是正确的方法吗?有没有更好的方法来抽象,在单个类中隐藏复杂的逻辑,并从 webdriver 的角度重用按钮、文本框、选择列表等元素?提前致谢!