我是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. 使用TDD/BDD開發操作系統
- 2. ASP.NET MVC中的TDD:從哪裏開始?
- 3. 用TDD思考OO - 從哪裏開始?
- 4. 使用Moq和TDD,從哪裏開始?
- 5. 軟件開發人員設計能力差 - 在哪裏轉?
- 6. nixpkgs中的haskell軟件包在哪裏?
- 7. 在軟件開發中使用角色
- 8. Ext JS 4 ux軟件包在哪裏
- 9. raco在哪裏安裝軟件包?
- 10. Django:軟件包在哪裏安裝
- 11. R存儲軟件包在哪裏?
- 12. 在NTFS文件系統MFT在哪裏
- 13. symfony2 tdd開發
- 14. 發佈中的文件在哪裏?
- 15. 哪種軟件開發方法?
- 16. WSS/MOSS開發......在哪裏畫線?
- 17. 這些系統頭文件在哪裏?
- 18. 哪裏elasticsearch存儲在文件系統
- 19. 使用TDD/BDD開發XSLT
- 20. 我在哪裏可以得到JDK中`sun`開始的軟件包源代碼?
- 21. 從哪裏開始學習開發安全系統
- 22. 插件開發,在哪裏保存用戶數據?
- 23. 我在哪裏可以查看自制軟件中的工具或軟件包
- 24. 通用設置中的iOS開發者菜單在哪裏
- 25. 開發TDD接口
- 26. 在哪裏保存上傳的文件?
- 27. 我的上傳在哪裏?
- 28. 哪裏可以使用npm軟件包?
- 29. 簡易表的軟刪除在哪裏?
- 30. Wikis使用MediaWiki軟件存儲他們的文章在哪裏?
什麼是SRS的工具???? –
軟件需求規格 –