我是TDD的新手。我必須使用TDD構建一個項目。我想知道在開始使用TDD之前是否必須創建所有SRS和設計?TDD在傳統軟件開發中的作用在哪裏?
-1
A
回答
0
首先,不可能在沒有要求的情況下進行浪費,因此無論如何SRS是必需的。如果你的軟件足夠靈活,那麼對SRS應用任何改變都很容易。對需求的任何改變意味着改變代碼和測試。
問題的第二部分是關於設計。在敏捷開發(和TDD本身)中沒有設計是常見的誤解。這意味着,就像在其他類型的SE開發過程中一樣,設計在實施之前完成。甚至在設計之前完成架構。
引述wikipedia's TDD design chapter:共享特性有效TDD必不可少
有效的模塊化設計產量成分。
*高凝聚力確保每個單元提供一組相關功能,並使這些功能的測試更易於維護。
*低耦合允許每個單元獨立進行有效測試。
*已發佈的接口限制組件訪問並作爲測試聯繫點,便於創建測試並確保測試和生產單位配置之間的最高保真度。
和:
場景建模可以極大地方便了TDD試驗的複雜系統的建設。
因此,系統是建模的,但考慮到可測性,我們在上面引用了這種系統的特徵(高粘聚力和低耦合)。
1
很多人都在使用ATDD和TDD。業主,BA應該有要求。
大部分的要求是以故事的形式給出的。
例子: 作爲(有的角色) 我想(這裏的一些功能) 所以我可以(收益/特徵在這裏值)
開發團隊測試人員和業務的人應該有會議和「談話」關於每個要求。
然後你想出了一個完成的意思。下面是我經常使用的一個很好的語法來幫助提出良好的可測試定義。
爲 「角色」 應該能看到/執行下列操作(輸入測試): 鑑於(some_initial_condition(S)) 當(埃文斯(S)_occurs) 然後(ensure_some_outcome)
邊緣情況(預計產生正確輸出的最大或最小輸入)
由此你可以有一個很好的理想,如何設置你的單元測試。
你也可能需要使用像黃瓜https://cukes.info/
相關問題
- 1. 在Unixy文件系統中,傳統的軟件放置位置在哪裏?
- 2. 使用TDD/BDD開發操作系統
- 3. ASP.NET MVC中的TDD:從哪裏開始?
- 4. 用TDD思考OO - 從哪裏開始?
- 5. 使用Moq和TDD,從哪裏開始?
- 6. 軟件開發人員設計能力差 - 在哪裏轉?
- 7. nixpkgs中的haskell軟件包在哪裏?
- 8. 傳統TDD與接受TDD
- 9. Mono開發用戶界面在哪裏?
- 10. 爲什麼Django開發版本不知道我的軟件包在哪裏?
- 11. 在軟件開發中使用角色
- 12. R存儲軟件包在哪裏?
- 13. Django:軟件包在哪裏安裝
- 14. angular-cli軟件包目錄在哪裏?
- 15. 你在哪裏下載C++軟件?
- 16. sdkman安裝軟件包在哪裏?
- 17. Ext JS 4 ux軟件包在哪裏
- 18. raco在哪裏安裝軟件包?
- 19. symfony2 tdd開發
- 20. 在NTFS文件系統MFT在哪裏
- 21. 發佈中的文件在哪裏?
- 22. Swift開發過程中資源文件的位置在哪裏?
- 23. 在Windows操作系統中的pathos軟件包操作系統
- 24. 哪種軟件開發方法?
- 25. AndroidManifest在統一5中在哪裏?
- 26. 使用TDD/BDD開發XSLT
- 27. WSS/MOSS開發......在哪裏畫線?
- 28. 哪裏elasticsearch存儲在文件系統
- 29. 這些系統頭文件在哪裏?
- 30. 「系統」httpd.conf文件在哪裏?
什麼是SRS的工具???? –
軟件需求規格 –