這裏我所理解廣播的測試對象主要經過兩個渠道得到:單元測試
一、經過manifest.xml中靜態註冊的廣播,用於收聽系統廣播後運行本身業務的這塊邏輯;測試
二、經過動態註冊形式的廣播,對象是如何發送廣播與接收廣播後執行的邏輯;spa
其實,第一點跟這裏所談的廣播測試無關係,主要測試對象是接收後的邏輯,須要設計相應的單元測試用例來測試;第二點,測試對象分爲兩部分,廣播是否正確發送?接收後處理邏輯是否正確?設計
有個細節要說明下:xml
本人寫了個接收器去接收被測應用所發送的廣播,但須要注意的是:若是接收廣播的應用自從安裝就沒有啓動過,是接收不到廣播的(本人自建的測試工程就接收不到),此時須要建立一個空service來繞過限制,開啓service用intent-filter來開啓對象
另外一方面,接收到廣播後程序該如何執行,在單元測試的作法,是將第一步,也就是發送廣播的邏輯給mock掉,再驗證以後的邏輯。由於,這裏不關注廣播是否發送成功。mock