c# - 如何使用 selenium 和 c# 将可重复部分添加到页面对象模型?

标签 c# selenium

我正在尝试使用 Selenium 和 C# 来自动化 Web 测试。

我有一个 Web 应用程序,其中某些部分(例如页眉和页脚)在多个页面上重复出现。

假设我有 SecA、SecB、SecC 部分。在我的页面中,它会显示为 Page1 将具有 {SecA, SecB, SecC},Page2 将具有 {SecA, SecB},Page3 将具有 {SecB, SecC}。

我不想在每个页面对象中创建重复项。如何定义这些部分并将其包含到我的页面类中?

如果您能提供一些示例代码,那就太好了。

最佳答案

//SecA:
public class SecA
    {
    [FindsBy(How = How.Id, Using = "Id")]
    private IWebElement SecAField;
    //Add Getters, setters, methods, constructors, etc..

}

//SecB:
public class SecB
{
    [FindsBy(How = How.Id, Using = "Id")]
    private IWebElement SecBField;
    //Add Getters, setters, methods, constructors, etc..
}

//SecC:
public class SecC
{
    [FindsBy(How = How.Id, Using = "Id")]
    private IWebElement SecCField;
    //Add Getters, setters, methods, constructors, etc..
}

//Page 1:

public class Page1
{
    public SecA secA { get; set; }
    public SecB secB { get; set; }
    public SecC secC { get; set; }

    //Add Getters, setters, methods, constructors, etc..
    public Page1()
    {
        secA = new SecA();
        secB = new SecB();
        secC = new SecC();
    }
}

关于c# - 如何使用 selenium 和 c# 将可重复部分添加到页面对象模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43362865/

相关文章:

c# - 我如何开始用 java 或 c# 为学校项目创建一个小型编译器

c# - Automapper创建 map 方法

selenium - 如何使用 selenium webdriver 在 Canvas 上移动鼠标进行绘制

PYTHON - Tkinter 和 Selenium 文件转换自动化 : send_keys function returns no attribute & challenge with finding elements

c# - 创建Excel文件并保存时大小加倍

c# - WPF 的 ActiveX VLC 插件不会静音

javascript - 使用 Selenium JavaScript 上传图片

java - 由于我将 Selenium 降级到 2.53.1,当我尝试使用 Firefox 访问本地主机页面时出现错误

java - Selenium geckodriver 无法找到匹配的功能集

c# - 如何使用 EPPlus 隐藏 Excel 电子表格中的大量列?