我们如何在 selenium webdriver c# 中初始化页面工厂
How do we initialize Page factory in selenium webdriver c#
我们有用于 selenium webdriver c# 的页面对象吗?
我正在尝试使用带有 c# 绑定的 selenium webdriver 来计算页面对象,但找不到任何 .
是否有任何语句可以模仿 c# 中页面对象的初始化,就像下面 java 中的那样:
ClassName obj=PageFactory.initElements(driverName, ClassName.class);
您在 C# 中有几个选项,它们与您在 Java 中使用的选项非常相似。 .NET PageFactory
实现位于 WebDriver.Support.dll
程序集中,这意味着您需要在项目中添加对它的引用。一旦你有了它,你就可以使用
// Assume MyPageObjectPage is your custom page object class.
// Of course, your constructor would likely be different, so
// you would need to change this to match your actual class
// structure.
// Further assume that driver is your IWebDriver instance.
MyPageObjectPage page = new MyPageObjectPage();
PageFactory.InitElements(driver, page);
或者,如果您想使用相同代码的 .NET 泛型版本,您可以这样做:
// Same assumptions as previous example.
MyPageObjectPage page = PageFactory.InitElements<MyPageObjectPage>(driver);
但是请注意,使用通用版本会对您的页面对象施加一些限制 class。具体来说,它必须公开一个采用单个参数的构造函数,并且该参数的类型必须为 IWebDriver
.
我们有用于 selenium webdriver c# 的页面对象吗?
我正在尝试使用带有 c# 绑定的 selenium webdriver 来计算页面对象,但找不到任何 .
是否有任何语句可以模仿 c# 中页面对象的初始化,就像下面 java 中的那样: ClassName obj=PageFactory.initElements(driverName, ClassName.class);
您在 C# 中有几个选项,它们与您在 Java 中使用的选项非常相似。 .NET PageFactory
实现位于 WebDriver.Support.dll
程序集中,这意味着您需要在项目中添加对它的引用。一旦你有了它,你就可以使用
// Assume MyPageObjectPage is your custom page object class.
// Of course, your constructor would likely be different, so
// you would need to change this to match your actual class
// structure.
// Further assume that driver is your IWebDriver instance.
MyPageObjectPage page = new MyPageObjectPage();
PageFactory.InitElements(driver, page);
或者,如果您想使用相同代码的 .NET 泛型版本,您可以这样做:
// Same assumptions as previous example.
MyPageObjectPage page = PageFactory.InitElements<MyPageObjectPage>(driver);
但是请注意,使用通用版本会对您的页面对象施加一些限制 class。具体来说,它必须公开一个采用单个参数的构造函数,并且该参数的类型必须为 IWebDriver
.