java介面自動化框架
1. 有好的java寫的http介面自動化測試工具嗎
Fiddler 比較好用 支持get post方式發送
2. python和java哪個比較適合做自動化測試,和測試開發一般用哪種語言。
語言歷史:
Python:簡單易懂。Python誕生於1991年,這門語言的初衷就是為了讓程序員可以用更少的代碼,寫出一樣的程序,達到事半功倍的效果。Python化繁為簡,給程序員減輕了不少壓力,以至於業界衍生出:人生苦短,我學Python。
Java:地位穩定。Java誕生於1995年,是一門有class為單位,高度面向對象的高級編程語言,因為Java語言穩定,很多公司在做商業級別項目時,都會選擇Java語言。
語言優點:
Python:易於學習、語法簡潔。Python對比其他語言來說,更容易一些,因為Python語言簡潔明了,很多外行人也能讀懂它的代碼,Python語言不需要很豐富的詞彙,簡單明了直奔主題,只需要少量的代碼就能創建出功能。
Java:架構獨特、速度快。Java是一門面向對象的編程語言,吸收了C++語言的各種優點同時擯棄了缺點,Java是可以跨平台的,應用十分廣泛,速度快的同時又十分穩定。
語言發展:
Python:快速崛起。Python發展快速,這是一個不爭的事實,Python主要優勢就是在任何方面都很強大,尤其是數據分析、機器學習、人工智慧領域,Python是人工智慧時代的第一語言。
Java:無法取代。Java是非常高級的編程語言,全球百分之八十以上的伺服器後台用的編程語言都是Java,至今還沒有語言可以替代它。
語言應用:
Python:人工智慧的首選。Python主要應用於數據分析、人工智慧、游戲開發、機器學習、腳本開發、網路爬蟲等領域,是大數據、人工智慧時代的主力軍。
Java:壟斷企業級應用的開發。Java主要應用就是伺服器開發、web開發以及安卓開發,壟斷了企業級應用的開發。
總體情況來講,Python和Java各有各的優勢,至於哪個更適合自動化測試,在這里小編推薦首選Python。
3. 給講講java介面的概念!
介面可以看成是特殊的抽象類。即只包含抽象方法和常量的抽象類。可以通過interface關鍵字來定義介面。看如下代碼:
interface Runner {
public static int DEFAULT_SPEED = 100;
public void run();
}
注意,run()方法,此處可以省略public abstract。因其默認就是public abstract的。
實現介面
與繼承不同,一個類可以實現多個介面,實現的介面直接用逗號分隔。當然,該類需要實現這些介面中定義的所有方法;
一個類可以通過implements關鍵字」實現」介面。一個類實現了某個介面後必須實現該介面中定義的所有方法。看下面的代碼,類實現了介面並實現了方法:
class AmericanCurl implements Runner , … {
public void run() {
System.out.println("run...");
}
}
另外需要說明的一點,介面可以作為一種類型聲明變數,一個介面類型的變數可以引用實現了該介面的類的對象;通過該變數可以調用該介面中定義的方法(具體的實現類提供了方法的實現)。代碼如下所示:
Runner runner = new AmericanCurl();
此句代碼為,一個介面類型變數,引用了子類的對象。調用時,調用的是子類對象的具體的實現。
介面的繼承
介面間可以存在繼承關系,一個介面可以通過extends關鍵字繼承另外一個介面。子介面繼承了父介面中定義的所有方法。代碼如下所示:
interface Runner {
public void run();
}
interface Hunter extends Runner {
public void hunt();
}
class AmericanCurl implements Hunter {
public void run() {… … …}
public void hunt() {… … …}
}
說明:AmericanCurl實現了Hunter,必須實現Hunter介面中的hunt方法以及其父介面Runner中的run方法。
介面和抽象類的區別
一個類只能繼承一個抽象類,但可以實現多個介面。
抽象類中可以包含抽象方法和非抽象方法,而介面中的所有方法均為抽象的。
子類繼承抽象類必須實現抽象類中所有抽象方法,否則子類也必須是抽象類。而子類實現介面則必須實現介面中的所有抽象方法。
4. 常用的自動化測試工具有哪些
列出了部分相關工具:
前端工具:Dw ,HBuilder ,webstream
ps:做前端也可以用java編寫,主流的是DW和HBuilder,這是必會的。
資料庫: mysql 、SQLyog 、Navicat for MySQL、oralce 、plsql developer、DB2
ps:主流的是MySQL以及oralce,在測試中必會的技能是對表的相關操作,增刪改查,查詢是最重要的。
開發工具:java :eclipse 、myeclipse 、IDEA
android :androidstudio 、eclipebanndle(eclipe+adt+android sdk)
python :PyCharm 、eclipse
單元框架:java :junit
python :unittest
虛擬機:vm 、vbox 、xshell 、xftp 、ssh
性能測試: LoadRunner 、QTP、 jmeter 、SoapUI 、GT 、iTest 、Emmagee(移動)
介面測試工具:LoadRunner 、jmeter 、fidder 、postmain 、SoapUI 、python自動化腳本 、在線介面測試工具
抓包工具:fidder 、httpwatch、firebug、wireshark
弱網測試工具:fidder(window)、 Network Link Conditioner(ios) 、 Charles 、 atc
移動端(android):android sdk 、uiautomatorviewer、 hierarchyviewer 、 DDMS 、 monitor 、 Monkey 、MonkeyRunner 、androidstudio 、手機開發模式 、GT 、iTest 、adb 、APT
自動化測試框架:selenium 、appium ,、Robot Framework 、watir、 Robotium、QTP
bug管理工具:Testlink、Mantis、bugFree、禪道 、TestDirector
版本控制工具:SVN 、git
5. 介面自動化測試如果選擇java語言會用哪些框架
介面自動化:
如果是那種http協議的介面
那麼第一種,使用eclipse 自己封裝下httpclient ,然後自己寫java腳本進行介面測試 這種要麻煩點
第二種,使用jmeter工具,這個是專門針對http介面的進行性能以及介面測試工具