首先可参考wiki此文,非常详尽:https://en.wikipedia.org/wiki/List_of_GUI_testing_tools

以下是我调研并实验过的(实验环境ubuntu 16.04):

xdotool(命令行方式调用)

未找到操作控件的方法,只有操作窗体相关

官网:

http://www.semicomplete.com/projects/xdotool/xdotool.xhtml

Dogtail(python)

可用于补齐xdotool控件操作部分,是通过ATK/AT-SPI实现的,还支持录制回放(旧版才支持,新版已经没这功能了。。。),而且还自带一个很不错的查看工具AT-SPI Browser(在ubuntu软件中心即可安装),但是文档比较一般,而且里面很多FIXME和疑问句,估计开发功能时也没想清楚。。。

官网与介绍:

https://fedorahosted.org/dogtail/

https://wiki.ubuntu.com/Testing/Automation/DogtailTutorial

ldtp(python/java/C#/ruby等)

支持多种计算机语言,而且支持linux、windows还有mac等多个系统,但是ubuntu(或所有linux)上不支持中文字符串,查找对话框时只要有中文就不找到了。。。而且此项目的代码中很多try-except都是直接return 0或pass,连print都没有,这样如果出现了预期之外的异常很难定位,对此项目的代码质量不敢恭维,不支持中文的问题可能就与此类异常处理不当有关。

官网:

https://ldtp.freedesktop.org/wiki/

以下只了解一下,并未使用:

sikuli(图形脚本语言)

就是用控件的图片来定位,并实现点击等各种操作的自动化框架。没试过,因为不适合我们的需求,但看其他人的评价不错。

官网:

http://www.sikuli.org/

IronAHK(mono)

类似xdotool,文档较少且停止维护,暂不确定查找窗体是否和xdotool一样强大

官网:

https://github.com/polyethene/IronAHK

Accessibility Tool Kit

dogtail就是使用这个技术实现的,但直接用ATK的话估计开发成本会比较高

官网:
https://developer.gnome.org/atk/

Xnee

可能还需二次开发一下

官网:
https://xnee.wordpress.com/documentation/

actionz

应该也不能点击控件

官网:
https://wiki.actiona.tools/doku.php?id=en:start

Linux界面自动化测试框架不完全汇总的更多相关文章

  1. 自动化测试框架【linux版】:JMeter + Ant + Jenkins

    前提条件:linux安装了jmeter.ant.jenkins 安装方法参考汇总目录中对应的博文 截图看不清的,可以调大浏览器倍数看 jenkins驱动ant执行,ant驱动jmeter执行 ant调 ...

  2. 移动APP自动化测试框架

    简介 移动APP的UI自动化测试长久以来一直是一个难点,难点在于UI的”变”, 变化导致自动化用例的大量维护.从分层测试的角度,自动化测试应该逐层进行.最大量实现自动化测试的应该是单元测试,最容易实现 ...

  3. 移动APP自动化测试框架对比

    转自微信公众号:腾讯移动品质中心TMQ 移动APP的UI自动化测试长久以来一直是一个难点,难点在于UI的”变”, 变化导致自动化用例的大量维护.从分层测试的角度,自动化测试应该逐层进行.最大量实现自动 ...

  4. Windows下部署Appium教程(Android App自动化测试框架搭建)

    摘要: 1,appium是开源的移动端自动化测试框架: 2,appium可以测试原生的.混合的.以及移动端的web项目: 3,appium可以测试ios.android.firefox os: 4,a ...

  5. 自动化测试框架【windows版】:JMeter + Ant + Jenkins

    前提条件:windows安装了jmeter.ant.jenkins 安装方法参考汇总目录中对应的博文 截图看不清的,可以调大浏览器倍数看 jenkins驱动ant执行,ant驱动jmeter执行 an ...

  6. Android 自动化测试框架

    Android常用的自动化测试工具框架: Monkey,MonkeyRunner,UIAutomator,Robotium,Appium,Monkey Talk...... 但这些工具框架都是什么呢有 ...

  7. 【转】推荐4个不错的Python自动化测试框架

    之前,开发团队接手一个项目并开始开发时,除了项目模块的实际开发之外,他们不得不为这个项目构建一个自动化测试框架.一个测试框架应该具有最佳的测试用例.假设(assumptions).脚本和技术来运行每一 ...

  8. android常用自动化测试框架

    目录: Monkey MonkeyRunner Instrumentation UiAutomator Espresso Selendroid Robotium Athrun Appium Monke ...

  9. RobotFramework自动化测试框架-Selenium Web自动化(二)关于在RobotFramework中如何使用Selenium很全的总结(上)

    好久没有继续分享关于自动化测试相关的东西了,自动化在现今的测试领域已经越来越重要了,大部分公司在测试岗位招聘中都需要会相关的自动化测试知识.而 RobotFramework自动化测试框架 是自动化测试 ...

随机推荐

  1. 在ubuntu纯字符gdb界面下来开发调试嵌入式ARM

    前面一个帖子介绍了使用eclipse来开发STM32的固件,但有的时候使用Eclipse的GDB调试器会崩溃掉,反复这样造成我们开发的效率降低,信心也会受一打击. 最近接触到的许多源码,就是在linu ...

  2. 用jQuery的ajax的功能实现输入自动提示的功能

    注意事项:要使用jQuery首先要把它的包引用进来( <script type="text/javascript" language="javascript&quo ...

  3. SSMS2008插件开发(2)--Microsoft Visual Studio 2008插件开发介绍

    原文:SSMS2008插件开发(2)--Microsoft Visual Studio 2008插件开发介绍 由于开发SSMS2008插件是通过VS2008进行的,有必要先介绍一下VS2008的插件开 ...

  4. openGL的使用步骤

    使用openGL步骤:1.创建GLSurfaceView对象2.创建GLSurfaceView.renderer实现类.3.设置activity的contentView,以及设置view的render ...

  5. UML和模式

    UML和模式应用学习笔记-2(迭代和进化式开发)   一:什么是迭代和进化式开发 1:迭代和进化式开发:通常会在还没有详细定义所有需求的情况下假设开发开始,同时使用反馈来明确和改进演化中的规格说明: ...

  6. linux不同环境下c/c++程序移植方法

    这边之前的大多数项目都用的java,而自己用的c++,等到快要上线的时候才发现线上机器的gcc和libc的版本都巨低,跟自己测试开发用的环境不兼容,编译出的c++可执行文件没法运行.解决c++程序的移 ...

  7. HashTable和HashSet中的类型陷阱

    HashTable和HashSet中的类型陷阱 发现这个陷阱的起因是这样的:我现在有上百万字符串,我准备用TopK算法统计出出现次数做多的前100个字符串. 首先我用Hashtable统计出了每个字符 ...

  8. angular 实战系列 之 mvvm模式

    什么是MVVM模式 mvvm模式是mvc模式的一种变体,其中第一个m表示model,可以认为是数据对象的抽象,v代表view,vm代表view model ,是对view中的数据抽象(注1).mvvm ...

  9. json时间格式的互换

    c#代码 public class DateTimeUtil { /// <summary> /// 把json的时间格式还原-服务端 /// </summary> /// & ...

  10. 一步一步深入spring(2)-三种方式来实例化bean

    在一步一步深入spring(1)--搭建和测试spring的开发环境中提到了一种实例化bean的方式,也是最基本的使用构造器实例化bean 1.使用构造器实例化bean:这是最简单的方式,Spring ...