我是机器人框架的初学者,所以我更喜欢使用带有selenium的外部python库。 由于机器人框架log.html真的很酷,我想把我的截图和测试结果放到机器人框架log.html中。 无论如何将外部python lib创建的屏幕截图放入robotframework中的log.html中?
答案 0 :(得分:1)
通常,大多数开箱即用的关键字都映射到单个Python函数。这使得@BryanOakley的建议成为正确的建议。看看Robot Framework本身的代码,了解它是如何做到的。
在这种情况下,我认为您可以通过查看Screenshot
library的代码了解最多。可以在GitHub中访问此库的Python代码。鉴于问题是将它们添加到日志中,重点应放在从line 230开始的两个函数上。第一个添加图像文件引用到日志,第二个添加只是超链接。
def _embed_screenshot(self, path, width):
link = get_link_path(path, self._log_dir)
logger.info('<a href="%s"><img src="%s" width="%s"></a>'
% (link, link, width), html=True)
def _link_screenshot(self, path):
link = get_link_path(path, self._log_dir)
logger.info("Screenshot saved to '<a href=\"%s\">%s</a>'."
% (link, path), html=True)
调用的实际函数logger.info
可以在Robot Framework API类中找到,并在文件的开头导入:
from robot.api import logger