① Web測試和App測試有什麼區別
1、系統架構方面:
web項目,一般都是b/s架構,基於瀏覽器的。app項目,則是c/s的,必須要有客戶端,用戶需要安裝客戶端。
web測試只要更新了伺服器端,客戶端就會同步會更新。App項目則需要客戶端和伺服器都更新。
2、性能方面:
web頁面主要會關注響應時間,而app則還需要關心流量、電量、CPU、GPU、Memory這些。它們服務端的性能沒區別,都是一台伺服器。
3、兼容方面:
web是基於瀏覽器的,所以更傾向於瀏覽器和電腦硬體,電腦系統的方向的兼容。app測試則要看解析度,屏幕尺寸,還要看設備系統。web測試是基於瀏覽器的所以不必考慮安裝卸載。
而app是客戶端的,則必須測試安裝、更新、卸載。除了常規的安裝、更新、卸載還要考慮到異常場景。包括安裝時的中斷、弱網、安裝後刪除安裝文件。此外APP還有一些專項測試:如網路、適配性等。
(1)web雲測試平台擴展閱讀:
Web測試和APP測試相同點:
1、設計測試用例時,依然都是依據邊界值分析法、等價類劃分等;
2、多數採用黑盒的測試方法,來驗證業務功能是否得到正確的應用;
3、需要檢查界面的布局、風格和按鈕等是否簡潔美觀、是否統一等;
4、測試頁面載入和翻頁的速度、登錄時長、內存是否溢出等;
5、測試應用系統的穩定性等。
參考資料來源:網路—web測試
② 雲測試平台有如何優勢
雲平台的好處:
第一,物理資源被整理成虛化的邏輯資源,所有使用者共享,系統集中調度使用
第二,開放的介面,共用的api開放給開發者開發第三方應用,方便快捷
第四,地理位置不受限制,可以分布在各個地方,只要網路互聯
③ 雲測試服務平台100塊幾小時
購買一套自動化測試軟體至少花8000元錢,測試中只需要使用2個月,但如果按800元/月租用該軟體雲測試平台,只需要支付1600元。同時隨著企業軟體版本和技術的發展,依賴的測試軟體或環境亦需要升級換代,又會產生升級和維護費用。而在雲測試環境中這些因素都無須企業考慮,交由提供雲測試服務的供應商完成即可。
支持用戶通過web瀏覽器形式遠程連接精靈雲測 機房的1000+台Android/iOS真機設備,隨時隨地進行遠程測試和調試,快速定位兼容問題。
④ 有適合測試web app的自動化測試工具么
1、Monkey是AndroidSDK自帶的測試工具,在測試過程中會向系統發送偽隨機的用戶事件流,如按鍵輸入、觸摸屏輸入、手勢輸入等),實現對正在開發的應用程序進行壓力測試,也有日誌輸出。實際上該工具只能做程序做一些壓力測試,由於測試事件和數據都是隨機的,不能自定義,所以有很大的局限性。2、MonkeyRunner也是AndroidSDK提供的測試工具。嚴格意義上來說MonkeyRunner其實是一個Api工具包,比Monkey強大,可以編寫測試腳本來自定義數據、事件。缺點是腳本用Python來寫,對測試人員來說要求較高,有比較大的學習成本。3、Instrumentation是早期Google提供的Android自動化測試工具類,雖然在那時候JUnit也可以對Android進行測試,但是Instrumentation允許你對應用程序做更為復雜的測試,甚至是框架層面的。通過Instrumentation你可以模擬按鍵按下、抬起、屏幕點擊、滾動等事件。Instrumentation是通過將主程序和測試程序運行在同一個進程來實現這些功能,你可以把Instrumentation看成一個類似Activity或者Service並且不帶界面的組件,在程序運行期間監控你的主程序。缺點是對測試人員來說編寫代碼能力要求較高,需要對Android相關知識有一定了解,還需要配置AndroidManifest.xml文件,不能跨多個App。4、UiAutomator也是Android提供的自動化測試框架,基本上支持所有的Android事件操作,對比Instrumentation它不需要測試人員了解代碼實現細節(可以用UiAutomatorviewer抓去App頁面上的控制項屬性而不看源碼)。基於Java,測試代碼結構簡單、編寫容易、學習成本,一次編譯,所有設備或模擬器都能運行測試,能跨App(比如:很多App有選擇相冊、打開相機拍照,這就是跨App測試)。缺點是只支持SDK16(Android4.1)及以上,不支持HybirdApp、WebApp。5、Espresso是Google的開源自動化測試框架。相對於Robotium和UIAutomator,它的特點是規模更小、更簡潔,API更加精確,編寫測試代碼簡單,容易快速上手。因為是基於Instrumentation的,所以不能跨App。配合AndroidStudio來編寫測試的簡單例子6、Selendroid:也是基於Instrumentation的測試框架,可以測試NativeApp、HybirdApp、WebApp,但是網上資料較少,社區活躍度也不大。7、Robotium也是基於Instrumentation的測試框架,目前國內外用的比較多,資料比較多,社區也比較活躍。缺點是對測試人員來說要有一定的Java基礎,了解Android基本組件,不能跨App。8、Athrun是淘寶出的一個移動測試框架/平台,同時支持iOS和Android。Android部分也是基於Instrumentation,在Android原有的類基礎上進行了擴展,提供一整套面向對象的API。這里有詳細介紹。9、Appium是最近比較熱門的框架,社區也很活躍。這個框架應該是是功能最強大的,它的優點:它的哲理是:它的設計理念:相關限制:總結:在iOS部分是封裝了UIAutomation;Android4.2以上是用UiAutomator,Android2.3~4.1用的是Instrumentation,也就說Appium同時封裝了UiAutomator和Instrumentation。所以Appium擁有了以上幾大框架的所有優點:跨App,支持NativeApp、HybirdApp、WebApp,還支持N種語言來編寫你的測試腳本。如果你在Windows使用Appium,你沒法使用預編譯專用於OSX的.app文件,因為Appium依賴OSX專用的庫來支持iOS測試,所以在Windows平台你不能測試iOSApps。這意味著你只能通過在Mac上來運行iOS測試。Client/Server架構,運行的時候Server端會監聽Client端發過來的命令,翻譯這些命令發送給移動設備或模擬器,然後移動設備或模擬器做出響應的反應。正是因為這種架構,所以Client可以使用Appiumclientlibraries多種語言的測試腳本,而且Server端完全可以部署在伺服器上,甚至雲伺服器。Session,每個Client連接到Server以後都會有一個SessionID,而且Client發送命令到Server端都需要這個SessionID,因為這個seesionid代表了你所打開的瀏覽器或者是移動設備的模擬器。所以你甚至可以打開N個Session,同時測試不同的設備或模擬器。DesiredCapabilities,其實就是一個鍵值對,設置一些測試的相關信息來告訴Server端,我們需要測試iOS、還是Android,或者換是WebApp等信息。AppiumServer是Node.js寫的,所以可以直接用NPM來進行安裝。AppiumClients,MacOS和Win下提供GUI,不需要裝Node.js,方便測試人員操作。用Appium自動化測試不需要重新編譯App;支持很多語言來編寫測試腳本,Java、Javascript、PHP、Python、C#、Ruby等主流語言;不需要為了自動化測試來重造輪子,因為擴展了WebDriver。(WebDriver是測試WebApps的一種簡單、快速的自動化測試框架,所以有Web自動化測試經驗的測試人員可以直接上手);移動端自動化測試應該是開源的;開源;支持NativeApp、HybirdApp、WebApp;支持Android、iOS、FirefoxOS;Server也是跨平台的,你可以使用MacOSX、Windows或者Linux;
⑤ 求一些國內外的App自動化測試平台,最好能走全過程的自動化,人力不夠,產品要急著上線
優測挺不錯的,價格也比較合適,而且他家是騰訊旗下的產品,APP自動化測試經驗很豐富,而且機型很全,不但支持企業在國內任何地方分享或使用分享的設備,還通過在香港架設服務節點,支持企業使用海外的分享設備。
⑥ web測試中對客戶端和伺服器的性能測試都涉及到什麼
這種就類似於雲計算等後端基礎服務的測試,對於一些大的公司,會有一個專門的團隊來開發這種後端基礎服務,這種服務當然也需要測試人員來保證質量。
這類服務一般都是通過HTTP介面的方式提供給剛才講的WEB/APP的後端使用,所以,第一個要做的也就是介面測試,也就是用Postman等工具做手工測試、用TestNG+HttpClient或者Python的Nose框架做自動化測試。
不過,對於這類後端服務來說,介面只是暴露給外用的部分,內部邏輯通常是非常復雜的,所以,除了針對介面做測試之外,測試人員還需要細致地了解這些服務端產品的技術框架及技術實現,需要了解到模塊的級別,對於系統框架圖、時序圖等都有很好的理解。針對這些理解去設計用例,再跟開發一起討論如何實現用例。
如果這種基礎服務用了某一個開源軟體,那通常也需要測試人員能關注社區的進展,並把我們發現的Bug及解決方案等推到社區,為社區做貢獻。
除了介面測試之外,在我們公司,異常測試、穩定性測試、性能測試也是服務端測試必備的測試類型。
異常測試會模擬各種異常情況,比如硬體異常-機器掛掉的情況下能否啟動備機、硬碟掛掉的情況下是否會丟失數據;網路異常-網路忽然斷掉、或者網路流量變小的情況;系統異常-操作系統忽然掛掉的情況。這些極端的情況出現的時候,我們需要驗證數據有沒有丟、能不能盡快啟動備機對外提供服務、系統狀態有沒有異常等。我們會採用各種方式或者工具來模擬這些異常,比如用TrafficControl工具來控制網路流量。
穩定性測試,就是模擬系統在7*24的運行下會不會出問題,一般會用介面測試或者性能測試用例不斷地跑,在運行期間,我們會模擬各種情況,比如說負載的變化、系統的各種干擾等。可以用ChaosMonkey等工具來進行這類測試。
性能測試,其實細分起來會有各種類型,比如負載測試、壓力測試、配置測試、甚至還有線上壓測、容量規劃等。最常規的性能測試,一般是先規定一個系統需要承受的壓力,比如說,某一個系統,1個小時之內會有1W單的單子,那基於這個需求我們分析伺服器後端需要承受的壓力,分析出來以後,就寫性能測試腳本,然後逐漸增加壓測的力度,直到超過這個預定的壓力。通常在這個測試過程中會發現各種問題,比如資料庫索引沒有建、線程池太小、系統異常等。需要解決了之後再加大壓力測試。也是用Grinder/JMeter等工具來進行性能測試,不過難的不是這些工具的使用,而是發現問題以後的定位。
對於這種後端服務的測試人員來說,技術上的要求是挺高的,需要有較好的編程能力,需要對資料庫、操作系統等機制有很好的了解才行。
⑦ 現在軟體測試都集中在web測試嗎
當然不是,移動端也是主流趨勢,並不是只是局限在web端
⑧ 如何測試響應式web
方法: 舊版本的谷歌瀏覽器,沒有自動響應式測試的功能,可以在谷歌應用市場
安裝一款名為「Mobile/RWD Tester」的插件。新的谷歌瀏覽器自帶響應式測試功能,可以進行響應式網站的測試。 在網路搜索引擎搜索「Firefox Developer Edition」關鍵詞,在搜索結果中,點擊「Firefox Developer Edition — Mozilla」,進入Firefox Developer Edition官方網站。
下載Firefox Developer Edition 即火狐瀏覽器開發者版本,點擊下載的可執行文件進行安裝。
安裝成功之後,點擊開發者工具按鈕,在下拉菜單中點擊「響應式設計視圖」,出現瀏覽器自帶有響應式測試功能。
使用一個響應式網站進行測試,可以根據需要切換不同的屏幕解析度。
BrowserStack 是一個提供網站瀏覽器兼容性測試的在線雲端應用,支持9大操作系統上的100多款瀏覽器。支持本地測試,預裝有完備的開發者工具。BrowserStack在近期發布了API,移動開發者將會進一步提高測試效率。
除此之外,還有「網路移動雲測試中心」提供響應式測試服務,選擇,其中的Web App測試服務,輸入網站即可進行測試。
⑨ 怎樣搭建web項目測試環境
測試環境的搭建是一名合格QA必須具備的技能。下面,結合CI和CD兩種不同軟體生產實踐,總結一下如何從零開始部署一套web集成測試環境。
1.伺服器准備。根據項目和使用的中間件的規模,准備好一個或多個資源配置能夠滿足要求的伺服器,一般選用linux下 centos的某個發行版作為伺服器。
2.安裝資料庫、完成資料庫表的建立。這里以開源的mysql為例。
Yum方式安裝msyql,並啟動mysql服務。(Yum的安裝可以參考http://blog.csdn.net/iamhuanggua/article/details/60140867)
yuminstall -y mysql-server mysql mysql-devel
創建資料庫和建表。規范的的系統,一般都保留有現成的SQL腳本,執行腳本就可以完成資料庫和表的建立。
3.安裝和配置JDK、tomcat、nginx…
安裝JDK。Yum 方式安裝最新版JDK:yum install JDK。
安裝tomcat。官網下載tomcat,解壓。
wget http://apache.fayea.com/tomcat/tomcat-7/v7.0.75/bin/apache-tomcat-7.0.75-linux-x64.zip
安裝和配置 nginx。官網下載nginx,解壓後,修改conf/nginx.conf配置請求轉發規則。
4.安裝持續集成工具jenkins.
Jenkins就是一個web服務,只需要從官方下載jenkins的war包,部署到web容器tomcat的webapp目錄下,啟動tomcat服務,就可以在瀏覽器端輸入IP和埠號(例如:部署在本機上可以通過 localhost:8080/jenkins 進行訪問)使用了。
5.配置一個Jenkins job用於編譯、打包產品、部署到測試環境
5.1 配置job完成編譯和打包。編譯打包的Jenkinsjob的配置比較簡單,可以自行網路。
5.2 在部署web服務的機器上,找一個目錄,寫一個shell腳本,拷貝jenkins job打出來的包到web伺服器的部署目錄下,並重啟服務。如果部署jenkins 和部署web服務的機器不是同一台,需要通過用戶名密碼或者建立linux機器之間的信任關系後,通過scp遠程拷貝。
5.3 在5.1的job中,增加「構建後操作」,構建後執行(或遠程執行)5.2中編寫的sh腳本。
6.配置一個或多個Jenkins job 用來完成一系列測試(包括但不限於UI自動化、介面自動化、安全測試等)
測試job的構建方式選擇步驟五中配置的job完成後觸發。到此為此,持續集成的工作就完成了。
7.從CI到CD——配置一個Jenkins ob 完成生產環境部署
如果所在組織的持續集成能力較高,在實施持續部署(Continous Deployment),就還需要配置一個jenkins job在所有測試job都通過後觸發部署生產包到生產環境。部分用戶群較大的產品還需要配置灰度發布。
⑩ 百度移動雲測試中心的雲測試
網路移動雲測試服務首次對外開放,通過「兩種類型」、「三個維度」、「六種測試」 十分鍾內完成上百種主流手機環境下的自動化測試,全面檢測Android應用。
兩種應用類型:
· Native App 本地應用
· Web App 網路應用
三個維度:
· 支持Android多版本測試
· 支持多種解析度測試
· 支持Top 100 Android主流真機
六種測試:
· 安裝卸載測試
· UI適配測試
· 穩定性測試
· 遍歷測試
· 性能測試
· 錄制回放功能測試 NativeApp測試是網路移動雲測試中心(MTC)推出的針對Android原生應用的測試服務。包括以下多種測試:
· 安裝/卸載測試:提供了應用在上百款機型的安裝/卸載測試。
· UI適配:測試應用對各種屏幕大小的適配情況,避免尺寸過多造成應用與屏幕不匹配的情況。
· 穩定性測試:穩定性測試可以發現應用運行當中的bug,避免出現應用崩潰的情況。
· 遍歷測試:與Monkey測試不同,模擬手動測試遍歷應用的UI操作,實現真正的一鍵式測試。
· 性能測試:啟動時間/流量/CPU佔用/內存佔用/耗電量各項數據記錄並生成報告。
· 錄制回放測試:提供單機錄制腳本,雲端多機回放方式的功能測試方法。 Web App測試是網路移動雲測試中心(MTC)提供的針對移動WebApp進行的測試。可以針對不同Android版本、屏幕解析度和瀏覽器進行測試,並返回最終測試結果。測試者通過提交測試任務的方式,將測試對象(WebApp URL)、測試行為(標准文本測試用例)、測試條件(操作系統、解析度、瀏覽器組合)等通過網頁選擇的方式提交到MTC。由MTC在雲端完成測試環境准備、任務調度執行和生成測試報告。測試者只須關注於測試業務邏輯(功能、性能、兼容性),MTC保證環境穩定性、調度正確性和執行結果可靠性。Web App測試屬於前瞻性技術,體現各種組合下的兼容性測試,包括Android和IOS平台。目前該項測試還處於公測階段。