如何搭環境
很多同學想學習自動化測試遇到的第一個問題就是如何搭環境。本文介紹的就是如何搭建環境,並提供工具鏈供讀者參考。
一、開始之前要了解的
命令行:Windows下,開始-運行-cmd 即可進入命令行。Linux下,默認即是命令行。
path:path是一連串的目錄。你要在命令行里執行任何程序,操作系統就會先在path里找有沒有這個程序。Windows中,右鍵我的電腦-屬性-高級系統設置-高級-環境變數里可以修改這個path的值。
IDE:集成開發環境,一個用來寫程序的工具軟體。提供調試功能,俗稱「打斷點「。
編譯器/解釋器:IDE並想要執行代碼需要裝的東西。比如你要寫python程序,要先在電腦上安裝python解釋器。
32 bit/64bit:操作系統的類型。右鍵「我的電腦」 - 屬性 可以查看你的windows系統是32位還是64位。
官網:軟體的作者一般會建立自己的官方網站來介紹這個軟體,並提供下載、使用說明等。
開發語言:編程語言,如java,python,需要有IDE加編譯器或解釋器才能用。
第三方庫:比如selenium之類的,你用java的話多半是一個jar包,用python的話就是一個python library。
獨立工具:類似於jmeter之類的,獨立運行的工具,通常也需要先裝對應語言的編譯器/解釋器才能運行。
二、怎麼找安裝教程
當遇到搭環境相關的問題是,最容易想到的做法,就是去搜索相關教程。比如在百度上搜一下「selenium 環境搭建」,馬上跳出一大堆教程。但這裡有個大坑:你搜到的教程十有八九是過時的。
解決辦法:
- 看搜到的教程的發布日期,兩年前的基本不用看了。
- 去官網找文檔或用戶手冊。這裡selenium的官網文檔做得非常差。但有的工具的文檔就做得很好,比如robot framework的用戶手冊。
- 去github看這個工具的源代碼里有沒有readme文件。比如selenium的readme文件里可以找到正在施工中的新文檔。比官網那個好多了。
- 搜索一些帶代碼示例的書籍。書籍同樣存在容易過時的問題,但有些還是可以參考的。
三、套用萬能公式:工具鏈
要從那麼多眼花繚亂的教程中找到你想要的,請看我總結的萬能公式:
待測程序的驅動工具 + 測試執行器 + 編程語言編譯器/解釋器 + 開發工具IDE + 輔助工具 = 自動化測試需要裝的東西
舉個例子,想用selenium做自動化測試。
待測程序的驅動工具(selenium + firefoxdriver) + 測試執行器(unittest) + 編程語言的編譯器/解釋器(python3.6) + 開發工具IDE(pycharm) + 輔助工具(firebug,firepath)。
如果用java那就是:
待測程序的驅動工具(selenium + firefoxdriver) + 測試執行器(testNG) + 編程語言的編譯器/解釋器(JDK1.8) + 開發工具IDE(Idea) + 輔助工具(firebug,firepath)。
如果你要做介面測試:
待測程序的驅動工具(requests) + 測試執行器(unittest) + 編程語言的編譯器/解釋器(python3.6) + 開發工具IDE(pycharm) + 輔助工具(Charles,postman)。
如果你要做性能測試:
待測程序的驅動工具(locust) + 測試執行器(unittest) + 編程語言的編譯器/解釋器(python3.6) + 開發工具IDE(pycharm) + 輔助工具(伺服器端性能監測工具)。
像這種公式就叫做工具鏈,也是做自動化測試開發需要了解的基礎。目前我單位在做的devops平台的工具鏈長到可以寫滿整整一頁A4紙。
四、我怎麼下載這些工具
1.一個一個搜索你要裝的工具,找官網下載
2.搜教程
3.一般的第三方庫下載方式:
Java:官網下jar包,或用maven安裝
python:使用pip install xxx來安裝,
比如pip install selenium
4.某些工具可以用docker的方式安裝五、安裝遇到問題怎麼辦
像前面說的,一個教程往往是過時的。必然會遇到問題,各種錯誤,不兼容。遇到問題怎麼辦:
- Google,百度上搜
- StackOverflow上搜
- 官網找教程
- 官方論壇/社區搜索或求助
- 非官方論壇/社區搜索或求助
一般來說你遇到的問題,別人都遇到過了。並且別人已經在網上求助過的佔大多數。大多數求助也都有人回應過,給出過解決方案了。你只需要把他們搜出來。
舉個例子,有位網友安裝python後遇到了這個問題:「應用程序無法正常啟動(0xc000007b)。請單擊「確定」關閉應用程序。」
新人一看報錯了,和教程上不一樣,就蒙了。這裡你只要去百度搜索一下:
這裡,第一頁就有正確答案了:64位系統裝了32位python導致了這個錯誤。
練習一下
看到這裡了,希望大家有空可以試一試,在自己電腦上試著搭建一個你沒有用過的自動化測試工具鏈。自己動手搜索下教程,跑通最簡單的一個case。
比如用於介面測試的:python+requests+unittest
首發於公眾號:測試進階(test_up)
推薦閱讀:
※Python實踐3-Tenacity提高自動測試健壯性
※selenium自動化測試入門 python unittest單元測試框架
※WEB自動化3:準備Selenium環境
※該怎麼樣才能讓所有測試人員迅速學會自動化測試呢?
※[貝聊科技]Appium 元素定位方式大揭秘