我是Silverlight和Selenium的新手。我搜索了使用Selenium webdriver自动化我的Silverlight应用程序,但我没有找到任何有用的来源。有人可以指导我吗?
干杯,
答案 0 :(得分:2)
可以将方法和属性声明为[Scriptable]
,或将整个类声明为[ScriptableType]
。这样您就可以通过JavaScript调用/访问它们,这可以通过WebDriver的executeScript
和executeAsyncScript
方法完成。在类构造函数中,您可以通过调用以下方法使实例在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的桥梁。不幸的是,这个项目目前还没有激活,但这些例子应该会给你一些见解。