如何使用selenium webdriver自动化Silverlight应用程序?

时间:2014-11-04 20:56:42

标签: silverlight selenium selenium-webdriver

我是Silverlight和Selenium的新手。我搜索了使用Selenium webdriver自动化我的Silverlight应用程序,但我没有找到任何有用的来源。有人可以指导我吗?

干杯,

1 个答案:

答案 0 :(得分:2)

可以将方法和属性声明为[Scriptable],或将整个类声明为[ScriptableType]。这样您就可以通过JavaScript调用/访问它们,这可以通过WebDriver的executeScriptexecuteAsyncScript方法完成。在类构造函数中,您可以通过调用以下方法使实例在DOM中可见:     HtmlPage.RegisterScriptableObject(" AnyNameYouWant",this);

请注意,没有默认的WebDriver交互(click,typeKeys)可以在Silverlight对象中使用,因此单击按钮就必须以编程方式完成,如:

var peer = new ButtonAutomationPeer(button);
var ip = (IInvokeProvider)peer;
ip.Invoke();

silverlight-selenium项目(https://code.google.com/p/silverlight-selenium/)为常见的UI组件提供了一些固定装置,完全依赖于这个JavaScript到Silverlight的桥梁。不幸的是,这个项目目前还没有激活,但这些例子应该会给你一些见解。