问题标签 [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 投票
1 回答
1210 浏览

java - Selenium,页面工厂,无法使用 PageFactory 继承类

我无法将具有此构造函数的 Menus Repository Class 继承到另一个名为 sub menus 的类,

当我继承 Eclipse 时将此消息显示为隐式超级构造函数 SubMenusRepository() 对于默认构造函数未定义。必须定义一个显式的构造函数,并添加建议

我对它的工作原理感到很困惑,我是 Selenium 和 PageFactory 的新手,需要澄清它是如何工作的以及如何处理,我在这两个类上都有 Webelement。所以 MenusRepository 类将被 SubMenus 类继承,然后是最后一个测试用例类。

0 投票
1 回答
1106 浏览

selenium-webdriver - 如何在 testng 中调试测试用例,有一个带有页面工厂的框架

调试使用selenium、testing 和 eclipse设计的一个 Web 应用程序测试用例。我有页面对象类。每个类都定义了它的元素和各自的服务方法。我在我的测试类中使用这些 pageobject 类。现在在一个测试类中,我收到以下错误:-

未找到特定元素

现在要在调试模式下运行这个特定的测试,我需要首先运行登录方法,它是不同页面对象类的一部分。那么如何使用eclipse进行调试。

0 投票
2 回答
628 浏览

c# - Selenium PageFactory.InitElements 如何工作

我正在使用 Selenium Page 工厂,我想对其进行某些扩展,但不能因为它们是密封的,所以我想编写自己的自定义逻辑。

问题:PageFactory.InitElements 如何工作,以便所有属性在使用时加载它们的值,而不是在调用此方法时加载它们的值。

所以,用一个例子来解释它

因此,他们的页面工厂的美妙之处在于,所有元素都已加载,但在使用时它们会转换为 webelements,因为如果所有属性在初始化时都分配了值,那么 NewBtn 属性总是会失败,就像在第 2 页上一样。

因此,他们可能会使用什么概念来初始化属性,以便在使用时而不是在运行时分配它们,任何虚拟代码都会很好,并且很高兴理解

提前致谢

0 投票
1 回答
1194 浏览

selenium - Selenium fluent 等待和页面工厂

所以,我一直在为这个挑战而战战兢兢,到目前为止我还没有获胜。如果有人可以帮助我,我将不胜感激。详情如下。

下面是代码示例: 1 ,

1.在示例1中,不正确的xpath是这个“//input[@id='identifierIdd']”

2.这是故意的,只是为了检查流畅的等待。正如预期的那样,1 分钟后测试退出并出现异常org.openqa.selenium.NoSuchElementException:

  1. 因此,我决定尝试使用 fluentwait 和 pageFactory 不幸的是我无法弄清楚如何Tester01使用 pageFactory 从类中实现以下行。

return driver.findElement(By.xpath("//input[@id='identifierIdd']"));

  1. fluentwait 和 pageFactory 实验的详细信息。下面是代码示例: 2 ,

    /li>

Tester01班级一起LocatorTest上课

因此Tester01,使用 pagefactory 的类不会流畅地等待 1 分钟,测试会立即失败org.openqa.selenium.NoSuchElementException:

我想我知道问题是什么但是并不真正知道如何克服这个问题,

这是我对这个问题的解释,在Example: 2 Tester01 class fluentWaiter 实例中的 return 语句没有使用适当的驱动程序实例。

这是我正在谈论的行,return locatorTest.elementTest;因为我认为方法 apply() 接受一个Webdriver实例,但是该行return locatorTest.elementTest;不使用该driver实例。

我的想法正确吗?有人可以帮我解决这个问题吗?或者请提出替代解决方案?

如果以上任何内容没有意义或需要更多信息,请告诉我。

在此先感谢尼罗

0 投票
1 回答
779 浏览

java - 尽管可以找到现有的 ClassName,但找不到 AppiumDriver MobileElement

我已经设置了我的 AppiumDriver 自动化类并尝试了简单的测试,例如测试并行、识别 MobileElements 和一般的滑动命令正在工作。通过扭结工作,我收到一条错误消息,指出我将 MobileElement 初始化为网页类的一部分,例如 Chrome 浏览器上的 Google 主页。即使我选择的 id 下面的 className 是正确的,我也没有得到这样的元素。在我的 Appium Server 中,它试图通过 className (android.widget.EditText) 进行查找,但找不到。我试过那个类和“.//android.widget.EditText”,但没有运气。

我会使用按名称搜索,但它没有给我很多选择。我什至尝试做一个 WebElements 列表,但它的大小不大于零。

这是我的页面对象类:

页面对象:

(更新,这次不使用 PageFactory 方法):GoogleMainPage:

在设置驱动程序/驱动程序后,我正在执行测试的类(generalWait() 只是一个线程睡眠方法):

我目前正在使用 Maven 运行它,io.appium java 客户端是 6.1.0。

设置时我缺少什么吗?如果您需要更多信息,请告诉我。

0 投票
2 回答
336 浏览

testng - 为什么我不能在我的 TestNg 类中使用 Page Factory

我试图@FindBy在我的代码中使用,但它不起作用

这是 PageObjectModel 类

这是TestNG类

我得到的例外是

谢谢,帮助我解决这个问题并正确使用 PageFactory

0 投票
0 回答
70 浏览

java - PageFactory 的存储元素

嗨,我有许多页面类,其中包含许多 WebElement,例如其中之一:

问题是我可以在哪里存储这些元素?我不能把它放在另一个类中,因为我的每个 pageClass 都扩展了 BaseExtendablePage,所以无法扩展。在界面中也无法移动元素,因为无法初始化变量。

0 投票
3 回答
467 浏览

selenium - 如何等待值处于可选择状态

嗨,我正在使用 Page Factory 将我的所有定位器保存在一个类中。

但我不能使用等待,因为它给我一个错误。

wait.until(ExpectedConditions.elementToBeClickable(onPage.getSourceOptions().selectByValue("Campaign")));

错误 :

ExpectedConditions 类型中的方法 elementToBeClickable(By) 不适用于参数(void)

0 投票
0 回答
233 浏览

java - 想要使用页面工厂框架实现反射方法来检索页面对象中的类对象

所以我正在使用使用页面工厂的页面对象模型。我为应用程序的每个页面(例如主页,注册等)都有单独的类,并且我在测试脚本类中为每个类创建一个对象,无论我编写脚本以调用继承的方法。现在我想实现一个像pagefactory这样的通用类,它可以返回每个页面对象类的方法,在测试用例中,我只是制作类页面工厂的对象,它可以返回注册、登录、主页等的所有方法。它将节省我创建多个页面对象类的单独页面对象。我知道这可以通过反射方法实现,但是我没有得到正确的使用方法,因为我没有使用任何关键字驱动的框架。请建议我如何解决这个问题。如果可能,请发送代码。

0 投票
1 回答
450 浏览

selenium - 组织我的页面工厂框架项目的最佳方式是什么

因此,我正在为具有登录页面、注册、设置等的应用程序构建一个带有 selenium webdriver 的 pagefactory testng 框架。到目前为止,我已经将我的项目结构保留为每个屏幕的单独页面类,例如用于登录的主页、用于注册的注册,setting 用于设置功能。对于测试用例,主页功能在 1 个包下,其他模块测试用例在各自的包中。我的问题更多的是关于很多导航条件。我应该如何组织导航条件。到目前为止,我正在编写来自同一主页包下登录屏幕的所有导航,类似地从各自包中的其他屏幕导航。我想了解在 selenium 框架中组织文件夹结构的最佳方式是什么。