GUI测试工具modshot、PyAutoGUI、Fltkhs、RedDeer介绍

以下为你介绍的GUI测试工具都可用在Linux系统上:modshot(UI 截图对比工具)、PyAutoGUI(GUI 自动化测试框架)、Fltkhs(Haskell 对 FLTK GUI 库 的绑定)、RedDeer(SWT 应用自动化测试框架)。

1、modshot(UI 截图对比工具)

modshot 是一个 CLI 实用程序,可捕获 UI 模块的屏幕截图(png 图像)并与现有基线图像进行比较。如果不存在基线,则会创建新基线。它是 PhantomCSS 之上的包装器,为视觉回归提供了一种简单的机制。

modshot 可以在两种模式下运行:

静态HTML - 当提供输入目录时,modshot 会递归扫描目录以查找HTML文件。如果发现文件使用 PhantomJS 加载,则将截取屏幕截图并将其放在与 HTML 文件相邻的screenshots目录中。对于后续运行,这些屏幕截图用作基线。modshot 假定您遵循模块化 UI 体系结构,其中每个 UI 组件都与测试文件和模拟 HTML 一起存在于其自己的目录中。

URL - 当提供 URL 时,modshot 使用 PhantomJS 加载 URL,截取屏幕截图(如果提供了选择器,则截取多个屏幕截图)并将它们放在提供的输出目录中。对于后续运行,这些屏幕截图用作基线。建议提供模块的 CSS 选择器作为选项,这样采用的是模块截图而不是整个页面。

如果两种模式均被提供,modshot 会并行启动它们。

在安装 modshot 之前需先安装 PhantomJS 1.8.2 或更高版本(但需低于2.0)。

安装:

$ npm install -g modshot

Example 1:

modshot -i src/ui-modules -s .box -s .test -e temp

Example 2:

modshot -u http://pages.ebay.com/sitemap.html -s h1 -s .btn -o screenshots

Example 3:

modshot -i src/ui-modules -u http://pages.ebay.com/sitemap.html -o screenshots -t 15

Example 4:

modshot -u http://pages.ebay.com/sitemap.html -p projectX -o screenshots

下载地址:https://github.com/eBay/modshot

2、PyAutoGUI(GUI 自动化测试框架)

PyAutoGUI是人类的跨平台GUI自动化Python模块。用于以编程方式控制鼠标和键盘。

安装:

pip install pyautogui

依存关系说明:

PyAutoGUI支持Python 2和3,如果要使用pip从PyPI安装PyAutoGUI:

Windows没有依赖项,Win32扩展不需要安装。

OS X需要按此顺序安装pyobjc-core和pyobjc模块。

Linux需要安装python3-xlib(或Python 2的python-xlib)模块。

需要安装Pillow,在Linux上,您可能需要安装其他库,以确保Pillow的PNG/JPEG正常工作。

如果您想进行开发并为PyAutoGUI做贡献,则需要从PyPI安装以下模块:

pyscreeze、pymsgbox、pytweening。

下载地址:https://github.com/asweigart/pyautogui

3、Fltkhs(Haskell 对 FLTK GUI 库 的绑定)

GUI测试工具modshot、PyAutoGUI、Fltkhs、RedDeer介绍

Fltkhs 旨在完成 Haskell 对 FLTK GUI 库 的绑定。

用于 Linux 和 Mac 的缩减版如下。

下载 FLTK 1.3.3。

安装:

> ./configure

> make

> make install

复制并安装:

> git clone https://github.com/deech/fltkhs

cabal install

通过调用 fltkhs-hello-world 测试。

下载地址:https://github.com/deech/fltkhs

4、RedDeer(SWT 应用自动化测试框架)

GUI测试工具modshot、PyAutoGUI、Fltkhs、RedDeer介绍

Eclipse RedDeer测试框架:

Eclipse RedDeer项目是可扩展的框架,用于开发自动SWT/Eclipse测试,该测试与应用程序的用户界面进行交互。RedDeer提供了PageObjects API,可轻松测试标准SWT,JFace(UIForms),Workbench(视图,编辑器)和Eclipse(向导,偏好设置)组件,还允许创建和扩展自己的组件。RedDeer还提供了与基于GEF或Graphiti的图形编辑器一起使用的功能。

Eclipse RedDeer已在Linux/CentOS平台上进行了广泛的测试。由于捕获了测试失败的屏幕快照并收集了Eclipse Platform日志,因此在CI环境中检查测试结果更加容易。

获取代码:

开始编写代码的最简单方法是创建自己的fork,然后克隆fork,最后添加上游:

$ git clone git@github.com:<you>/reddeer.git

$ cd reddeer

$ git remote add upstream http://github.com/eclipse/reddeer.git

在本地构建RedDeer:

如果您在本地克隆了git repo,则可以使用maven构建它:

$ mvn clean install

如果只想构建基础而不是运行测试,请使用以下命令:

$ mvn clean install -DskipTests=true

下载地址:https://github.com/eclipse/reddeer

注明

以上就是GUI测试工具modshot、PyAutoGUI、Fltkhs、RedDeer的介绍内容,这些GUI测试工具都能使用在Linux操作系统中。

栏目相关文章