來源:Python 技術(shù)「ID: pythonall」 從石器時代開始,原始人來已經(jīng)開始學會制造并使用工具,以滿足自己的生活所需,這也是人類和動物最本質(zhì)的區(qū)別,人類懂得制造并使用工具而動物不會。 21 世紀的現(xiàn)代社會更是如此,企業(yè)與企業(yè)之間是人才的競爭,而人的競爭力則嚴重依賴其會使用工具的多少以及熟練程度,畢竟古人有云:「君子生非異也,善假于物也」。 軟件測試作為軟件發(fā)布前的最后一個環(huán)節(jié),起著至關(guān)重要的作用。雖然在很多公司里相對于開發(fā)來講,公司對測試崗都不太重視,但這絕對不能掩蓋其地位的重要性,稍有疏漏,就可能給公司帶來巨大的損失。 縱觀國內(nèi)各公司大部分的測試工作依然都是手動完成的,這不僅是對人力資源的巨大浪費,同時還伴隨著巨大的潛在風險。因為人有時候會犯錯,而機器則不會。所以我們要盡可能的把可以自動化的操作交給機器去完成,從而解放我們的雙手,去做一些更有意義的事情。 什么是 AppiumAppium 是一個開源的移動端自動化框架,可用于測試原生應用,移動網(wǎng)頁應用和混合型應用,且其是跨平臺的,可用于 iOS 和 Android 操作系統(tǒng)。這也就意味著你可以針對不同的平臺使用同一套 Api 來編寫測試程序,以提高代碼的服用行和可維護性。 設(shè)計思想為了更好的應對千變?nèi)f化的需求,Appium 沒有和某一門具體的語言綁死,開發(fā)者可以使用自己最熟悉的任何語言來使用該框架。Appium 之所以這么靈活完全得益于其優(yōu)秀的設(shè)計思路,該框架使用 client-server 的設(shè)計模式,只要 server 端可以收到 client 端發(fā)送過來的請求,那么 client 端用什么語言來實現(xiàn)其實意義已經(jīng)不大了,無關(guān)緊要。 這樣的設(shè)計思想帶來了巨大的好處,其一就是使框架可以做到支持多語言,其二則是可以把 server 端放在任何機器上,即使是云服務器上也完全沒有問題。 入門想必在程序圈兒的你肯定對 Hello World 不陌生,每當我們學習一個新的技術(shù)的時候基本都會寫一個 Hello World 的 demo 來快速熟悉該技術(shù),同樣,今天我就帶著大家做一個入門 Appium。 首先我們把環(huán)境搭建起來,依次安裝下列軟件。
之所以需要安裝 Android Studio 完全是因為鏈接安卓模擬器調(diào)試 App 程序時會用到 Android SDK,而 Android Studio 附帶了 Andoid SDK,固直接安裝 Android Studio。另外我們選擇 Appium 桌面版,是因為桌面版附帶可視化操作界面,對新手比較友好。 其中前四個大家可能都比較熟悉,自行安裝即可。Appium 則需從 https://github.com/appium/appium-desktop/releases/tag/v1.18.3 下載對應的版本直接安裝就可以了。 安裝完成后啟動 Appium,Host 和 Port 默認即可,接著點擊下面的配置按鈕進入配置頁,設(shè)置完成 Android Home 和 Java Home 后直接啟動 Server 就可以了。 當看到如下界面時,恭喜你,Server 已經(jīng)啟動成功了。 接下來,我們開始完善 client 端,其實就是代碼而已,直接調(diào)用 Api 即可。因為我們是要通過 Appium 來操控模擬器上的 App,所以需要先將模擬器啟動。命令行輸入 接著就是編寫 client 端代碼了, from appium import webdriver 有了以上信息之后,我們就可以通過程序直接鏈接到模擬器,然后自動啟動微信 App 了。 那么啟動了微信 App 之后我們還可以做什么操作呢?基本上我們手動可以做的操作,程序都可以替我們完成。 |
|
來自: Python技術(shù) > 《待分類》