【问题标题】:Expanding selenium2 functionality PageFactory扩展 selenium2 功能 PageFactory
【发布时间】:2011-10-10 05:59:18
【问题描述】:

我想为 selenium2 PageFactory 添加一个功能。我想要的是FindsByAttributeSelectedElement 兼容。 我发现的问题是,如果我将SelectElement 类型的属性添加到IWrapsElement 并在ProxiedWebElementInterceptor 中实现它。当调用该字段的方法SetValue 时,他说“'Castle.Proxies.INewsWrapsElementProxy' 类型的对象无法转换为'OpenQA.Selenium.Support.UI.SelectElement' 类型。” 有人能解释一下 Castle 代理返回所需值的机制吗?

【问题讨论】:

    标签: c# reflection selenium-webdriver castle-dynamicproxy


    【解决方案1】:

    试试这个

    // Presumed to be in Page class
    [FindsBy(How = How.Id, Using = "ButtonId")]
    public IWebElement submitButton { get; set; }
    
    // Presumed to be in Helpers class
    public void ScrollToElementOnPage(IWrapsElement element) 
    { 
       var js = driver as IJavaScriptExecutor;
    return  js.ExecuteScript("arguments[0].scrollIntoView(true);",element.WrappedElement);
    }
    
    Helpers _helpers = new Helpers();
    Page _page = new Page();
    _helpers.ScrollToElementOnPage((IWrapsElement)_page.submitButton);
    

    【讨论】:

      猜你喜欢
      • 2016-05-12
      • 2021-11-06
      • 1970-01-01
      • 1970-01-01
      • 2012-12-13
      • 2022-01-09
      • 1970-01-01
      • 2020-02-14
      • 2018-02-12
      相关资源
      最近更新 更多