我正在使用Robot Framework自动化网站。该网站使用Silverlight应用程序来显示视频。
我的目标:要在我的Robot Framework中创建一个带有web元素的自定义关键字,该web元素是Silverlight播放器在页面上所处的位置,并对可见内容进行截图。我不需要与Silverlight应用程序进行交互。
已经完成的工作:我已经创建了一个自定义关键字Capture Screenshot Of Element
,它使用一个Web元素并返回仅包含该特定元素的屏幕截图。但是,如果元素包含Silverlight应用程序,那么我得到的只是背景空白,而不是Silverlight应用程序上显示的图像。
是否可以在浏览器中指定Web元素并显示该元素在屏幕上实际看到的内容?
[当您使用硒库获取屏幕截图时,它将调用Web驱动程序方法将整个页面内容转换为图像。但是由于明显的原因,对于Silverlight组件,它无法捕获它。
解决方案是您需要获取当前的屏幕图像,而不是依赖浏览器。最简单的方法之一是使用Robot Framework SikuliLibrary。它还具有Capture Region关键字,可以拍摄屏幕特定部分的快照。我希望这足以满足您的要求。