接口測試與接口性能測試總結

接口測試與接口性能測試總結

這段時間在自己搭建公司的測試平臺框架,基本已經成型,可以滿足編寫接口、接口自動化、接口性能、數據展示等功能,回過頭來看可以使用的工具,發現還是儘量保持“工具引用,不依賴工具”的思想,這裏做一個總結。

  1. 首先只會獨立使用工具,會帶來很大的侷限性;

    比如,我們會使用jmeter來寫幾個接口,會用postman來做接口,還有其它的工具,那麼,我認爲這隻能侷限在你的接口測試的最基礎層面。通過閱讀工具的文檔,誰都可以通過UI頁面的操作,搭建接口測試,然後執行,產生報告。但是遇到稍微複雜點的接口,你就無從下手了。我舉個例子,我在測試微信小程序的時候,微信會根據每次登錄產生一個不同的code,一但code被使用,就失效,這個時候,就需要自己來寫一個服務器後臺接口來主動接受code值,然後將code值實時保存給接口工具。這樣,如果只會jmeter,postman等獨立的工具,你根本沒有辦法很容易的建立接口測試,所以,單獨的工具是不完美的。

  2. 確定語言陣營;

    不同的工具,使用的腳本語言並不一樣,至少主推的腳本語言是完全不同的。jmeter是純java,首推的腳本語言是java腳本;postman主推的腳本語言是JavaScript;python接口測試用python3(不建議選擇python2)。所以,做爲一個具有編碼能力的測試人員,你要選好你的語言陣營,至少是主要語言。當你選擇了主要語言,那麼,主要工具的選擇才能明確。搭建測試框架的時候,就遇到這樣的問題。首先,我選擇的主語言是python3,所有,我用django做外層框架。python去寫接口沒有問題,但在接口性能的組合上,遇到了情況,目前,最流行的開源性能測試是jmeter,但如何將jmeter和python相結合使用?本身2者就各爲其主,當然沒有很好的合體方式。於是,既然是python陣營,那麼就要選擇python的性能測試工具,於是,用locust來做內部框架中負責性能的部分,問題解決。

  3. 不要盲目崇拜工具;

這個問題實際跟現在的大環境本身就浮躁有關。我們面試任何一家公司的測試崗位時,都會被問到,會不會性能、自動化、安全測試等,會不會用loadrunner,會不會selenium,會不會寫腳本。但真正進了公司後才發現,TMD天天做功能,老闆還時不時的要你去寫需求文檔,跑市場,公司的軟件不超過100個人使用,測試都沒有完成,用戶就急忙要,趕工期時恨不得來一個“意念測試”,一秒中出結果。而像jmeter、loadrunner這樣的工具,實際上是很強大的,你能用好10%就很不錯了,你的公司能用上10%就算你的公司牛逼了。很多公司到“註銷”的那一天,都沒有去想過使用這些工具的目的是什麼。所以,不要盲目崇拜工具,而要實事求是的根據公司自己的情況來選擇工具,不一定你一定需要這些工具。

  1. 從基礎做起

接口測試,我建議用python自己寫出來。每一個接口,自己一行代碼一行代碼的實現,這樣是最能理解接口的方式。也許你會認爲很費時間,很難,其實,只是你自己能力不夠,自己不願意做而已,技術的東西,本身就是因爲“懶”而被創造的,只要你願意開始,真的不難。python編碼能力是最基本的,也非常重要,只有這樣你才能做更多的測試內容,才能擴展更多的測試方式。同學,用python一步一步把接口寫出來吧

  1. 接口測試、性能測試的大小維度,實際上很廣

這個問題取決於維度的大小。你寫一個get去訪問百度,用jmeter去壓測百度,我們也叫你做過接口測試和性能測試了,對吧。你用postman去測試了一個模塊的幾十個接口,那也叫你做過這方面的測試了,對吧。但我認爲,做測試,也要像軟件開發一樣,一定要有項目的概念,將測試定義爲項目的維度去做。這樣的好處是
(1)所有測試成果可以被“沉澱”到一個地方;
(2)所有測試工作可以被“控制”在一個界限中;
(3)避免測試工作的重複性;
(4)測試工作生成物可在一個標準下被最大化複用;
(5)工作透明;

還有其它的很多好處,大家試了才知道!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章