1. 程式人生 > >關於自動化學習淺談二

關於自動化學習淺談二

cookie 使用 一點 編程 文件的 元素 周期 字符 pan

什麽是自動化測試?自動化測試的原理是什麽?常用哪些工具?常用哪些框架?工具的原理又是什麽?自動化如何學習?自動化的優點與缺點是什麽?價值在哪裏?學習自動化測試要了解與掌握哪些內容?哪些項目適合自動化測試呢?

想學習自動化測試首先得明白以上一些問題,不然學著只能知其然,不知其所以然。

1,什麽是自動化測試?優缺點是什麽?價值在哪裏?

自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。

從它的定義中是不是所有人為驅動的測試都可以轉化為機器執行呢?

答案是否定的。這也就帶出了自動化的局限性。說明自動化測試不能完全取代手工測試。

自動化測試從它的名稱中看出,它的優點就是自動執行測試,速度快,效率高,節約時間與人力成本,非常適合於敏捷開發。

對於一些周期長,需求變動小,要求分布式測試,重復性高的測試的項目很有幫助。

2,GUI界面自動化測試工具的原理是什麽?常用的框架有哪些?

通過工具來驅動WEB端的API方法來操作被測試的系統。常用的框架流行的有unittest(python)-單元測試框架,視不同編程語言而定,robotframework。

相對來說,robotframework入門相對簡單,對從業者的編程語言要求不是很高,相對單元測試框架而言。

3,常用的工具有哪些?如何學習?

筆者目前只接觸了selenium,QTP沒有實踐過。

對於selenium的學習,先了解一下其家族成員的構造等基本信息,然後安裝,配置環境,再者,練習如何定位元素,定位元素的幾種方法,其常用的API各種方法,再然後,就是通過API方法來操作被測試系統,實戰了。

在此,筆者強調 ,多練習,一定不要偷懶,熟練了,東西就是你的了。

其中有元素定位的八種方法,by:name,id ,xpath,css,link_text,partial_link_text,tag_name,class,最常用的就是XPATH,CSS,原因,定位快,準確率高,而且基本都能定位到。缺點就是影響速度。

學會 定位方法後,就可以學習API的方法了,如:前進,後退,健盤,鼠標事件,不同窗口切換,不同表單切換,彈出框,IFRAME框架進入與退出。分頁,操作COOKIES,控制瀏覽器窗口大小,兩種等待的方法,

JS,上傳,下載文件等。這些也需要有一個練習的過程才能掌握。(單元測試框架)

剩下的就是實戰了。前面在練習的過程中碰到困難了,多看書,看博客,看懂了就練習,反正資料都放在那了,不看,損失的是自己。找不到,就百度吧。

自動化測試學習需要掌握一門編程語言的,筆者推薦python,2與3無所謂,易學,易上手。JAVA也不錯,ruby也不難。我個人學習的是python2,難度不大,多練就好。

自動化對編程語言要求掌握的深度不高,最起碼要了解一些基本的數據結構,如元組,列表,字典,字符串的基本語法,條件與循環使用,文件的輸入與輸出,函數與函數式編程,調用模塊,錯誤與異常,變量,面對對象編程。等。學會了這些後,再來學習selenium就輕松些了。不要 反過來。

個人去年也是這樣一步一步走過來的,robotframework框架相對來說簡單些,易上手,填寫表格式的寫用例。屬於關建字驅動,但對個人的經驗與成長來說相對也慢一些。unittest單元測試框架,上手相對來說難一點,但也不是很難,只要前面的編程語言基礎打牢了,學起來也很快。代碼能力越強,上手越快,寫出來的腳本越穩定。對後續個人的發展也越有好處,無論是從經驗還是個人價值來說,都有好處。

最後,筆者希望與大家一起共勉,學習貴在堅持,測試行業高精尖技術很少涉足,也就是說,沒有技術問題,只有時間問題。

關於自動化學習淺談二