问题标签 [page-factory]

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.

0 投票
0 回答
47 浏览

java - 访问 Has-A 关系中的变量

我正在使用页面工厂设计模式,其中我实现了 Has-A关系波纹管类:

实现关系的另一个类:

这就是我使用元素编写测试的方式

我的问题是,是否有可能或有一种方法可以访问PaginationHelper类中的类变量D_TC_Contacts_RcontactsTestCase而不在类中创建PaginationHelper类对象D_TC_Contacts_RcontactsTestCase

0 投票
0 回答
274 浏览

java - 如何使用 pagefactory 方法滚动和查找元素

我正在使用 pagefactory 模型并使用下面的代码来查找元素,当元素在屏幕上可见时它可以正常工作,但是,当它不可见时它会失败,我已经尝试了 action 方法,但这对我不起作用。

公共类 ChooseVenuePage 扩展 AbstractPage {

}

该元素位于屏幕底部,我需要滚动。任何建议都会非常明显。

0 投票
2 回答
1440 浏览

java - Selenium 中用于列表的“StaleElementReferenceException”

请参考下面的代码,此代码将从 findtable 方法获取所有 orderID 并将所有 orderID 传递给 clickonIndividualOrderID 方法,因此光标移动到每个 orderid 并单击它,将出现一个新页面并获取状态和点击完成,如果我们尝试选择下一个订单ID,它现在回到旧页面,它会抛出异常

您能否建议一些解决此问题的方法提前谢谢

0 投票
1 回答
769 浏览

java - 如何在 Selenium 中正确实现 PageFactory 注释?

我正在尝试做的事情:

我目前正在将我的 Selenium(Java) 框架从标准页面对象模型 + cucumber 设置迁移到 PageFactory + cucumber 设置。

这是我到目前为止所做的尝试使其工作:

  • 我启动了我的 PageFactory。
  • 我导入了所有必需的包和依赖项。
  • 我检查了多个在线教程以确保我的语法正确。

我遇到的问题:

我的 IDEA (IntelliJ) 不断在 @FindBy 注释上给我错误,并因此无法编译。

当我将鼠标悬停在 @FindBy 注释上时,它告诉我“@FindBy 不适用于方法”

当我尝试运行测试时,每次出现 @FindBy 注释时都会出现以下错误。“注释类型不适用于此类声明”

我的问题是关于代码:

我一定错过了一些简单的东西,但我似乎无法发现它。任何帮助将非常感激。

提前致谢。

0 投票
7 回答
10647 浏览

c# - 当前上下文中不存在名称“PageFactory”

我正在用 C# 创建一个测试自动化框架。在项目的顶部,我有“使用 OpenQA.Selenium.Support.PageObjects;”,但是当我尝试引用 PageFactory.initElements(driver, PageName) 我看到消息“名称‘PageFactory’不存在于当前上下文”。

我认为 PageFactory 类包含在 Selenium.Support nu get 包中。在线教程似乎以与我相同的方式引用 PageFactory 没有额外的导入,有什么我遗漏的吗?

NuGet 包:

  • 使用 Selenium.WebDriver 版本 3.9.1
  • 使用 Selenium.Support 版本 3.9.1
  • 使用 NUnit 3.9.0
  • 使用 NUnit3TestAdapter 3.9.0
  • Microsoft.NET.Test.Sdk 15.5.0
  • 下面的代码:

    0 投票
    0 回答
    207 浏览

    java - 错误:通过页面工厂测试(Selenium)在类中找不到主要方法

    在 Factory 上构建框架Java/Eclipse/Selenium WebDr/Page以创建我的测试。但是在运行测试时,它给出了一个错误,上面写着:

    “错误:在类中找不到主方法,请将主方法定义为:public static void main(String[] args)”

    即使我添加了 main 方法,测试仍然不会运行。请帮助如何将主要方法插入我的测试或任何其他建议。代码示例如下:

    测试示例:

    在此处输入图像描述

    0 投票
    1 回答
    4936 浏览

    java - how = How.ID in selenium

    我有一个小问题,在 Selenium 和 Page Factory 中的以下行之间有什么区别?

    0 投票
    4 回答
    935 浏览

    java - 验证元素是否出现在页面上避免 NoSuchElementException

    如果动态发生任何错误,则错误消息会显示在站点上。就我而言,如果发生错误,会出现弹出窗口,我需要单击“确定”按钮。

    问题是,使用所有 Selenium 技巧,我无法避免 NoSuchElementException 或“无法单击元素”异常。期望:如果出现错误弹出,点击确定,如果没有,继续跳过这些ifs。我正在遵循这种方法:

    PageFactory 元素和方法。

    问题是,如果我使用 errorElement1.isDisplayed 方法,我会得到 NosuchElementException。

    我尝试了所有可以在这里找到的技巧,到目前为止没有成功。谢谢!

    0 投票
    3 回答
    4002 浏览

    selenium - 在运行时将值传递给 xpath

    在不喜欢或评论某事之前,请阅读整个 Q。在这里发布之前,我已经在互联网上进行了搜索。我有以下项目结构。

    Homepage.java中,我已经使用POM Page Factory 方法声明了所有 WebElement ,并创建了相应的方法来单击 Electronics 链接。

    Fipkart.java 中,我调用Electronics click 方法

    我在这里的疑问是声明的 WebElement 是专门用于电子产品的。

    有没有一种方法可以创建一个具有如下所述类型的 WebElement 并从 main 方法动态传递 %s 的值?

    0 投票
    1 回答
    960 浏览

    selenium - @FindBy 与 driver.findElement() 之间的区别?

    我都用过,但不知道应该在哪里用@findBy,在哪里用driver.findElement()

    我听说它的@FindBy行为是动态的,而driver.findElement()行为是静态的。这是什么意思?