在介紹完Unit test的章節後大家一定會有一個想法,沒測試到UI感覺很不踏實。這也是事實,我們不是寫純邏輯的後端程式,只用單元測試或許不太夠,而且單元測試中把UI元件的操作排除在外,怎麼能保證在App上實際操作沒有問題。因為只做單元測試是無法包涵所有的實際使用狀況,所以我們需要做Instrumentation Test來進一步確認App UI元件行為的正確性。
Instrumentation Test就是設備測試的意思,可以使用real device實體機器或是virtual device虛擬機器,設備測試依照測試範圍的不同可分為三個階段。
Intrumentation Test可以包含所有的測試,只要需要launch application process的測試都可以稱為Intrumentation Test。也因此你可以在Intrumentation Test的時候去順便跑無UI的Local Unit Test,但是一旦要launch application process執行效率會變很差沒人會這樣做。因此我們要把Unit Test和Intrumentation Test分開來做,必竟時間就是成本。
下一節會開始介紹Integration Test,Intrumentation Unit Test會忽略不講原因是使用機會不高,我個人也會在Integration Test的時候把它當成一個環節來測試。