Linux GUI自動化測試工具 LDTP

2021-10-23 17:57:04 字數 3008 閱讀 7384

目錄

1. 背景

2. 環境

3. 安裝和使用

2)windows下的安裝和使用

3)linux下的安裝和使用

4. 踩到的「坑」

5. 參考資料

專案需要,研究了一下linux下的gui測試工具:ldtp。gnu ldtp(linux desktop testing project) 是乙個 gnu/ linux/ unix 下的 gui 應用測試工具。支援系統包括:freebsd/ fedora/ mac/ opensuse/ opensolaris/ windows/ ubuntu等。本文介紹一下ldtp2的環境搭建,基本使用以及在使用中踩的坑。

作業系統

位址linux

windows

a.雙擊 cobrawinldtp-4.0.0.msi,按照提示安裝完即可。

b.在《安裝盤》\program files (x86)\vmware\cobrawinldtp目錄下,雙擊 cobrawinldtp.exe,啟動server端。

c. 執行-》cmd,輸入 python3,進入python命令;輸入如下命令,如果沒有報錯,則證明安裝成功。

這裡有兩種方法。

apt-get install ldtp
同樣的,安裝完成後,匯入ldtp,如果沒有報錯則表示安裝成功。

b. 原始碼安裝(這裡以作者環境和安裝過程為例,均是親驗總結,如有其他環境或問題需要具體分析):

i. 安裝完ubuntu後,預設無法ssh連線,會出現報錯:permission denied(publickey, password)。修改方法:

重啟ssh服務。# /etc/init.d/ssh restart

ii. 修改apt源。這是由於作者的環境無法直接對接外網映象源,若能直接連網則可以忽略該步驟。

deb [trusted=yes] http://本地源ip/本地源路徑 bionic main restricted universe multiverse

deb-src [trusted=yes] http://本地源ip/本地源路徑 bionic main restricted universe multiverse

iii. 修改gsettings。這裡需要在ubuntu系統中進行修改,不能直接ssh連線修改。

# gsettings set org.gnome.desktop.inte***ce toolkit-accessibility true
補充:gsettings的部分命令

# gsettings list-schemas | grep inte***ce
# gsettings list-keys org.gnome.desktop.inte***ce | grep toolkit
# gsettings get org.gnome.desktop.inte***ce toolkit-accessibility
iv. 安裝ldtp

如若直接按照github上的安裝過程,是無法使用的(這裡被坑了好久),首先需要安裝如下一些依賴包。

# apt install -y python3-pip

# apt install -y python3-setuptools

# pip3 install twisted -i 《本地源》 --trusted-host 《本地源ip>

# apt install -y python-ldtp

v. 修改原始碼。這是因為python3中已經沒有unicode()這個方法了,而ldtp的部分原始碼是基於python2進行開發的。為了解決這個相容性,只能進行原始碼修改,否則無法獲取中文字元。

# vi /usr/local/lib/python3.6/dist-packages/ldtp-3.5.1-py3.6.egg/ldtp/__init__.py

將gettextvalue()的返回從unicode()改為str():

vi. 重啟ubuntu。一定要記得做完上述的修改後,重啟作業系統哦~~~

vii. 基本使用方法同windows。

1)在windows中沒有啟動server端。出現報錯:connectionrefusederror: [winerror 10061]

2)在windows預設安裝之後,匯入ldtp包是正常的,但是使用方法getwindowlist()卻出現如下報錯:

報錯的**只是乙個日誌記錄,並不影響功能使用,所以將這裡注釋後,重新匯入ldtp包即可。

3)部分方法在使用時出現有這樣的報錯:unable to get editable text 和 text cannot be entered into object. 。暫時還沒有找到解決方法,懷疑是由於元件有屬性沒有設定正確導致的。

4)按照說明文件中進行遠端連線# ldtp -s 時,報錯: modulenotfounderror: no module named 'xmlrpc_daemon'。暫時沒有找到解決辦法。不清楚是沒有使用對遠端連線場景還是確實有錯誤。

-- 其他工具

自動化測試工具

二 如何實施自動化測試 自動化測試指軟體測試的自動化,在預設狀態下執行應用程式或者系統預設條件包括正常和異常,最後評估執行結果。將人為驅動的測試行為轉化為機器執行的過程。自動化測試框架一般可以分為兩個層次,上層是管理整個自動化測試的開發,執行以及維護,在比較龐大的專案中,它體現重要的作用,它可以管理...

自動化測試工具monkey

monkey是android中的乙個命令列工具,可以執行在模擬器裡或實際裝置中。它向系統傳送偽隨機的使用者事件流 如按鍵輸入 觸控螢幕輸入 手勢輸入等 實現對正在開發的應用程式進行壓力測試。monkey測試是一種為了測試軟體的穩定性 健壯性的快速有效的方法。a 測試的物件僅為應用程式包,有一定的侷限...

自動化測試工具分析

目前在國內使用的最多的自動化測試工具就是qtp,以至於許多人錯誤的理解為自動化測試就是使用qtp進行一下錄製,然後就是自動化測試了,這種理解是有偏差的。qtp 是hp公司開發的乙個款自動化測試工具,名氣很大,但是售價也非常昂貴,國內有一些牛人破解了qtp,進行使用,但是大公司一般不會採用這種方式,要...