二、團隊專案:二次開發
至此,我們有了初步的與人合作經驗,接下來投入到更大的團隊中去。
也具備了一定的個人能力,能將自己的程式碼進行測試。接下來嘗試在別人已有的基礎上進行開發。
上一界51馮美欣同學的專案:http://www.cnblogs.com/maxx/
1.每個團隊從Github上fork這個專案的原始碼;
https://github.com/RABITBABY/We-have-bing
2.瞭解、部署、執行這個專案,理解其功能及實現;
3.進行必要的測試,發現軟體的bug並記錄,並進行bug的排除;
- 簡要說明如何下載部署執行這個專案;
- 補充這個軟體的單元測試並提交到Github上;
- 解釋說明找出的bug及修復情況;
- 列出每個團隊成員的個人貢獻分。
在這次團隊合作中進行測試找了下網上的一些測試資料:
主要來源:http://huihai.iteye.com/blog/1986568
我們有下載“數學口袋精靈”APP進行使用,介面做得挺美觀,也很可愛,但也發現了一些bug,bug如下:
1、做完一組題目後,按返回鍵回到初始介面後點選開始,會發現提示APP停止執行,要重新開啟APP才能再次進行使用;
2、伴隨的音樂不能關閉;
3、題目中的階乘題目在一組題目中重複出現多次,例如在我一次做題過程中,“1!”出現了3次;
4、答完題出現的提示語中“哦”字沒有完全顯示出來;
5、在手機不開聲音的時候不能再每道題目做完的時候知道自己是否答對,要在有聲音的時候通過聲音才可以辨別;
6、有時會出現一樣的選項;
APP的單元測試:
在這裡我們測試選出基於該程式原始碼中具有代表性的程式碼進行單元測試,計算公約數的方法setNumeratorAndDenominator(int a, int b)。
在這裡我們新建了一個測試類與被測試類
int setNumeratorAndDenominator(int a, int b){ // 設定分子和分母 int c = f(Math.abs(a),Math.abs(b)); // 計算最大公約數 int numerator = a / c; int denominator = b / c; if(numerator<0 && denominator<0){ numerator = - numerator; denominator = - denominator; } return c; } int f(int a,int b){ // 求a和b的最大公約數 if(a < b){ int c = a; a = b; b = c; } int r = a % b; while(r != 0){ a = b; b = r;; r = a % b; } return b; }
該被測試類的值返回給測試類c值以測試
public void textone() { double sum; sum=cal.setNumeratorAndDenominator(3, 6); Assert.assertEquals("錯誤 ",sum,3,0); }
如圖,3和6的公約數是3,因此它顯示正確(沒錯誤)。如果寫的是2,它會顯示有錯誤。
而在把分母改為0的情況下,它也會有錯誤,顯示BU ZERO .
github地址:https://github.com/xujiayi-gg/team.git
關於MATHAPP的測試
關於如何在Eclipse匯入安卓專案的檔案:
首先,從世界那裡下載adt-bundle-windows-x86_64-20131030androi(這裡分32位還是64),解壓,執行它的ANDROIOD.manager。它會自己安裝eclisepe環境下所需的android條件所需要的包。開啟elsiepe後,它會自己要求安裝該SDK,之後,我們就會神奇地發現在import專案的介面下,gerenel多了android選項;如圖:
這時候,匯入android專案就好,那麼這時候,如何解決無法匯入import.java.*的問題呢,這個時候,我們可以又見該APP專案,點JAVA BUILD PATH->ADD LIBRARY->JRE SYSTEM LIBRARY ,匯入即可,如圖: