about1-today


-------------android

持續集成: 持續更新代碼,持續編譯和測試web

 

方向:
移動:
monkey測試-複習
monkey測試-用於壓力穩定測試,產品基本穩定沒有特別多的bug時,通常會用monkey去測試;
壓力測試:是否發生閃退,奔潰,以及整機測試;
adb monkey 命令:指定monkey相同的:尾隨機數
-s 就是一個指定序列的操做順序 -s 後面是隨機數
--日誌文件可指定-重定向到一個文本
--- adb shell monkey -p com.android.phone --throttle 500 --pct-touch 80 -v -v 1000 > /mnt/sdcard/monkey_log.txtsql

log日誌:複習
日誌文件:logcat/trace.txt
記錄和查看系統調試信息的功能,經過命令查看:
adb logcat[]
閃退不等於:Crash ,ANR
------
Dropbox 能夠查實際一段時間內的異常信息:包括ANR
——————————————————————————————————————shell

 

android應用測試有什麼側重點
應用閃退的緣由?
一、緩存垃圾過多
  平時在使用軟件的過程當中,會產生一些垃圾文件,若是長時間不清理會致使手機愈來愈卡,也會出現閃退情況。
  進入設置–應用程序——所有——找到有問題的應用程序,清除數據或者緩存。(注:清除數據,會清除掉應用的我的設置、帳戶信息等。)
  二、運行程序過多
  若是不進行設置,不少軟件都會本身運行,而手機後臺程序過多會形成內存不足,從而形成應用閃退。如出現軟件閃退,可先清理內存後再試試。
  三、手機殺毒軟件
  部分手機軟件存在着惡意代碼,會被殺毒軟件攔截於是不能正常進入,應該經過綠色下載平臺或者使用軟件商店來下載安全係數較高的遊戲。
  (注:以上三個緣由都如今均可以經過安全軟件清理,輕鬆解決。但須要注意在刪除一些大型文件時請謹慎。)
  四、應用版本問題
  若是應用的版本較低,會致使應用軟件不兼容,形成閃退。若是是版本太舊,更新爲新版本便可。
  如新版本若是出現閃退,是應用改版本還在調試中,無需擔憂,會很快修復。
  五、網速問題
  部分軟件須要一個穩定的網絡,使用的是2G/3G網絡,形成閃退的可能性比較大,建議在有WiFi的狀況下玩比較好。
  六、缺乏數據包
  一些大型遊戲須要數據包才能運行。因此要先安裝好數據包才能使用。
  七、系統不兼容
  部分軟件對版本有必定的要求,若是系統版本太低,軟件是不能支持的,因此會閃退。
  八、分辨率不兼容
  一些軟件對手機分辨率有必定的要求,若是手機分辨率不兼容,有部分軟件就容易出現閃退或其它錯誤。數據庫


應用從哪些方面測試
首先要測試正常的流程。
測試各類分辨率
測試後退操做等,可能的非正常操做致使的錯誤
可使用monkey等測試工具
一、功能正確性測試;
根據這個安桌軟件的需求,看它到底支持那些功能,對每一個功能,編寫測試用例,驗證這個功能是否正確;例如:有註冊,登錄,編輯消息,發送消息,刪除消息,察看消息等功能,那麼你就要測試這每一個功能是否正確實現了。
二、界面易用性測試;
主要考慮(1)易理解性;(2)易學習性;(3)易操做性;是否達到要求。
三、兼容性測試;
不一樣安卓版本的兼容性;不一樣安卓設備的兼容性,例如:不一樣廠家的手機,PAD等;看該軟件在不一樣的軟件和硬件下顯示是否正常,功能是否正確;
四、安全性測試;
用戶信息是否不被泄漏等;
五、不一樣網絡狀態下的測試;
wifi和2g,3g不一樣的網絡速度下的功能是否正確;沒有網絡鏈接的狀況下會怎麼樣,等等。編程

如何抓取日誌:
日誌重定向;adb logcat -b main -v time緩存


如何作接口測試 -複習接口測試
.接口測試質量評估標準
3.性能測試如何作,性能測試相關指標
4.壓力測試和負載測試的區別安全

--自動化
3.什麼是分層自動化網絡

測試用例分層結構:
大多數分爲四層
1 case測試用例的運行case
2 case直接調的lib。(如對被測試系統的操做類,對比測試結果類,清理環境類等)
3 lib調用的公共基礎函數或類baselib。(操做數據庫,操做文件,操做Linux命令,操做基礎數據)
4 數據層(數據庫數據結構,加載數據文件等)
測試目錄結構:
case :測試用例。
lib;case直接調的lib
baselib:lib調用的公共基礎函數或類
conf:測試用例的配置文件
data:存放數據層的數據文件
log:測試用例生成log的目錄
mock:上下游mock模塊
report:測試報告的目錄
tools:測試中使用的一些工具數據結構

 

4.測試數據如何準備 ——開發人員一塊兒準備
5.測試腳本的維護成本怎麼樣:提升複用性

6.webDriver相關:
a.定位策略
id,name,CSS,tag,link,XPath 等

b.如何實現用例失敗or異常時須要用到截圖
引入截圖模塊
---

c 分佈式執行webdriver用例
利用jenkins 執行用例
--
7.移動應用相關:
a.Appium的定位策略有哪些
通常爲resrouce-id:
name定位
ClassName定位
xpath定位
AccessibilityId定位元素

b.簡述appium的原理
能夠把自動化測試腳本,翻譯成UIAutomator能識別的Java語言,而後調用UIAutomator來執行測試。

c.IOS和Aandroid的UI自動化原理是什麼
UiAutomator
UIAutomation

d.定位策略都失敗,如何操做?
e.monkey測試的優缺點
對於穩定一點的機器

f.使用monkey發現閃退,如何使用monkey重現
使用隨機尾數


Jmeter:
a.使用jmeter作什麼測試
b。若是有一個登錄接口須要服務端返回參數,再帶這個參數去請求才能完成登錄,用jmeter怎麼作

編程:
什麼是面向對象編程
面向對象程序設計將對象做爲程序的基本單元,將程序和數據封裝其中,以提升軟件的重用性、靈活性和擴展性;
繼承(inheritance):
封裝性(Encapsulation):
多態性(Polymorphism)


SQL:
1.說一下左鏈接和右鏈接
2.介紹一下索引
3.sql建表題--百度


----
數據驅動:
數據的改變,驅動自動化的執行,從而引發測試結果的改變;
能夠理解爲:參數化,輸入數據不一樣,輸出結果不一樣的變化;
關鍵字驅動:
經過關鍵字,引發測試結果的變化。
關鍵字是對類的封裝;

--webdriver錯誤截圖:get_screenshot_as_file()

本站公眾號
   歡迎關注本站公眾號,獲取更多信息