淺談Android源代碼改進問題
下面介紹下有關Android源代碼的內容和編程技巧,但是首先要讓大家了解下什么是Android操作系統,所謂的Android系統:基于Linux平臺的開源手機操作系統。
實際上,TestCase這個類用于在Android源代碼擔當所有獨特的TestCase的基類的作用,它是一個Abstract Class。Android單元測試類繼承關系圖如下所示:
之所以有那么多XXXTestCase主要是為了簡化工作。例如當你想對一個訪問數據庫的功能進行測試時,首先需要自己啟動并初始化數據庫。在這里是類似的,如果你想測試一個Activity,首先要啟動它。而ActivityTestCase就會自動幫你做完這些事情。
而 ActivityUnitTestCase會更注重測試的獨立性,它會讓測試與Android源代碼的聯系降到***。其余的類可以查看相關的Javadoc 來按需挑選。要編寫測試,就是找到合適的XXXTestCase作為基類來繼承。
并且編寫自己的測試方法。很明顯的,最簡單的編寫測試的方法就是繼承Android源代碼寫一個自己的TestCase。然后為自己的一組TestCase寫一個Activity界面。由界面控制 TestCase的啟動,運行和結果報告。
但是,你很快會發現,為何要給測試寫一個界面呢?這太詭異了。這時就需要一種技術,它可以利用命令行(Shell)來啟動一組測試,并且通過命令行的形式給出結果。這就是所謂的Instrumentation。
除了上次我們簡單介紹的內容外可以看到Motodev studio for Android在創建新文件時,多出了不少選項,比如Android Activity、Broadcast Receiver、Service、Content Provider,幾乎Android源代碼的主要框架都包含在內了。
不過僅僅是基礎代碼的生成,從另一個側面可以看到這點Google畢竟是從Web起家的,對于開發人員來說微軟這方面作為軟件帝國想的就十分周到。Motodev只是做了小幅的補充。經過簡單的試用可以看到對于標準的Android源代碼來說。
試用Motodev還合適,不過考慮到目前moto的經濟狀況,長久考慮還是推薦使用Eclipse+ADT的方式穩當,總體而言和Google官方的開發工具相比沒有太大的改進,至少工作在Java VM上的產物穩定性仍然是一個問題。
【編輯推薦】