我正在使用一個web應用程序,通常它運行在Apache下的mod_perl中。我和同事正在嘗試做一些單元測試。是否有任何好的工具或技術用於模擬會話和請求等,這些可以幫助我們在Web服務器上下文之外執行此代碼?爲單元測試嘲弄Apache會話數據
7
A
回答
3
如果您使用的是mod_perl 1,則有mod_perl附帶的Apache::FakeRequest。它不是請求對象的完整模擬,所以你必須添加一些你自己的方法。如果你的代碼使用Apache::Request更是如此。還有更多的cookies和上傳。大多數情況下,您將花費大量的時間與Test::MockObject。幸運的是,Apache對象接口非常簡單。
如果可能的話,你應該考慮切換到一個基於Plack的框架(Catalyst,Dancer等),它們提供了更強大的測試和調試功能。如果你使用mod_perl2,你很幸運!很容易(相對於mod_perl 1)用Plack包裝mod_perl2應用程序。 Plack::App::FakeApache會爲您完成大部分工作。 Here is a discussion勾畫出各種技術和好處。
相關問題
- 1. 嘲弄在單元測試
- 2. 我如何嘲弄在單元測試
- 3. 用Python單元測試嘲弄side_effect
- 4. 在Typescript單元測試中嘲弄
- 5. 單元測試Ping/PingReply - 嘲弄?
- 6. 單元測試方法嘲弄的IList
- 7. 在單元測試中嘲弄PHP函數
- 8. 在單元測試環境中嘲弄/僞造靜態函數
- 9. 單元測試和會話?
- 10. 在grails單元測試中嘲弄動態查找器
- 11. C# - 單元測試/嘲弄 - 遺留代碼
- 12. 在單元測試中嘲弄API調用
- 13. 嘲笑單元測試類
- 14. Perl單元測試嘲諷
- 15. 測試一個塊與RSpec的嘲弄
- 16. 測試django國際化 - 嘲弄gettext
- 17. Angular2 - 在測試中嘲弄RouteParams
- 18. 單元測試中的嘲諷表單
- 19. 單元測試會話變量
- 20. 如何單元測試會話狀態
- 21. ASP.NET MVC單元測試 - 會話
- 22. Symfony 2.1權限,單元測試,會話
- 23. 單元測試:真正的數據庫與嘲諷
- 24. 嘲諷和單元測試ASP.Net 1.0庫
- 25. 在Wordpress單元測試中嘲笑
- 26. 單元測試嘲諷標準
- 27. Android單元測試/ Mockito:android.location.Location沒有嘲諷
- 28. 單元測試中嘲笑UnitOfWorkManager.Current
- 29. Python,單元測試和嘲諷導入
- 30. 在Java中嘲笑Db單元測試
mod_perl 2還有[Apache2 :: FakeRequest](https://metacpan.org/pod/Apache2::FakeRequest)。 – Flimm