用于截图的robot框架测试库

robotframework-screencaplibrar的Python项目详细描述


Introduction

ScreenCapLibrary是一个Robot Framework测试 截图库。项目位于GitHub 可以从PyPI找到下载。

screencaplibrary独立于操作系统,还支持Python2.7 作为Python3.4或更新版本。

该库基于robotframework的标准Screenshot库。它几乎 同样的功能,除了默认情况下截图是用png捕获的。

screencaplibrary具有以下额外功能:
  • 以PNG、JPG/JPEG、GIF和WebP格式拍摄屏幕快照
  • WebM格式的视频捕获,可嵌入到日志文件中
  • 调整屏幕快照的压缩/质量
  • 支持GIF(持续时间为100秒或更低,具体取决于系统内存)
  • 在给定的时间内拍摄多个屏幕快照
  • 支持部分屏幕捕获

未来将实现的功能:

  • Configurable monitor screen grabbing for screenshots and recording

Documentation

有关可用关键字和详细信息,请参见keyword documentation 关于图书馆的总体情况。

有关在Robot框架中使用测试库的一般信息,请参见 Robot Framework User Guide

Installation

建议的安装方法是使用pip

pip install --upgrade robotframework-screencaplibrary

运行此命令还会安装最新的robot框架msspillowopencv-python版本。最低支持的MSS版本是 3.2.1并且支持的最低枕头版本是5.2.0。 对于视频捕获,至少需要opencv-python4.0.0.21版本。 在安装 第一次。

使用最新版本的pip,可以直接从 GitHub存储库。要从主分支安装最新源,请使用 此命令:

pip install git+https://github.com/mihaiparvu/ScreenCapLibrary.git

或者,您可以从PyPI下载源发行版,提取 然后安装:

python setup.py install

Usage

要在robot框架测试中使用screencaplibrary,首先需要 与任何其他库一样使用库设置导入。

使用robot框架时,通常建议编写为 尽可能容易理解的测试。

*** Settings ***DocumentationThis example demonstrates capturing a screenshot on the local
...                    machine.LibraryScreenCapLibraryLibraryOperatingSystemTest TeardownRemove Filescreenshot_1.jpg*** Test Cases ***Take A Low File Size Jpg ScreenshotTake Screenshotname=screenshotformat=jpgquality=0File Should Existscreenshot_1.jpg

Using with VNC

在本版本发布时,mss,在带有vnc虚拟桌面的gnu/linux上不起作用。 作为解决方法,您可以将库导入时的screenshot_module值更改为PyGTK

*** Settings ***LibraryScreenCapLibraryscreenshot_module=PyGTK

为此,您需要安装以下依赖项。

  • 使用python 2:

    sudo apt install python-gtk2
    
  • 使用python 3:

    sudo apt install python-gi python-gi-cairo python3-gi python3-gi-cairo gir1.2-gtk-3.0
    

Support

如果提供的文档不够,则有各种支持论坛 可用:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
分别使用椭圆曲线密码对文本消息进行java加密和解密   java如何将JTable滚动到特定值?   java JSP登录注销简单web应用程序,使用bean在数据库中存在数据时返回false   java无法编译,未设置类路径,包不存在?   java为什么这一变量会受到影响?   集合为什么Java在Map中没有putIfAbsent(key,supplier)方法?   安卓在Java中计算仿真时间   java初始化方法在主类中的指定方法之前运行   java如何在hadoop的reduce中将genericWritable恢复为用户定义的可写?   如何使用java替换pdf中的文本   参数不适用于ASP服务器的java HttpPost   创建对象时的java NullPointerException   Java JPanel中的swing图形有问题,但它在一个框架中工作   java Android Studio在硬件设备上运行时出错   google api类路径的java空指针异常   java如何将InputStream转换为DataHandler?   java在多个Jetty服务器之间共享连接池