乐趣区

关于软件测试:Centos7下安装Dogtail-GUI自动化测试工具并打开sniff工具过程中遇到的问题解决方法

因为测试须要,需在 Centos 下进行 liunxGUI 软件自动化测试,所以用到了 python 的 Dogtail 库,继而应用 Dogtail 的 sniff 控件获取工具,然而遇到了很多问题记录如下。

1 环境

Centos 7
Python3.9.0 
Python2.7.5

2 应用 Python3 装置 Dogtail

pip3 install dogtail
  • 我这里默认曾经装置好了,如下:

3 gi 模块装置

  • 输出 sniff,关上 sniff 控件辨认工具,然而间接报错
ImportError: No module named 'gi'
  • 查阅很多材料说要装置 python-gobject,所以装置下这个软件
yum install python-gobject

4 pyatspi 模块装置

  • 装置完后,持续输出 sniff,又提醒如下:
ModuleNotFoundError: No module named 'pyatspi'
  • 依据网友材料,应该是短少了 pyatspi,所以装置它,不同的操作系统装置的包名称不一样,如下,这里是 centos 应用 yum 装置
# OpenSUSE, 您须要装置 python-atspi
zypper in python-atspi

# Ubuntu 和衍生产品, 它是 python-pyatspi
apt-get install python-pyatspi

# RedHat,Fedora 和衍生品来说, 它是 at-spi-python
yum install at-spi-python

5 批改 sniff 的 python 版本

  • 好了,以上装置完后,仍然提醒如下,然而明明曾经装置了:
ModuleNotFoundError: No module named 'pyatspi'
  • 狐疑是 python 版本的问题,因为有 python2.7.5 和 python3.9.0,好了批改 sniff 文件
  • 查找到 sniff 的目录,大家文件,发现应用的是 python3.9,改为 python2.7

6 装置 pip(python2)

  • 以上批改完后,持续输出 sniff,然而还是报错,提醒:
 没有 dogtail.config 这个模块 
  • 剖析起因是咱们之前装置 dogtail 的时候,应用的是 pip3 装置的,即环境装置到了 python3 里边,然而咱们以上步骤曾经把 sniff 的环境改为 python2.7.5 了,然而 python2 里咱们是没有装置 dogtail 的,所以装置 dogtail
  • 输出 pip install dogtail, 然而提醒没有 pip 这个 bash,即没有 pip 这个命令,这里的 pip 指的是 python2 环境的;
  • 那就装置 pip2,命令如下:
    yum install python-pip
    ## 7 批改 pip 的命令解析器为 python2
  • 以上执行完后,输出 pip,还是提醒没有这个文件或目录,可是曾经装置好了呀
  • 批改 /usr/bin/pip, 把首行中的 python3 改为 python2.7
  • 再次输出 pip,OK 了

8 python2 环境装置 dogtail

  • 输出 pip install dogtail, 如下:

9 再次启动 sniff

  • 输出 sniff,这下 OK 了,如下;
退出移动版