Test :: More有一些機制在每個子測試之前運行一段代碼?我發現自己在每次測試中都寫了相同的安排,並且我想通過將它放在塊之前或之前讓我的生活更輕鬆?我看着perldocs,但沒有看到爲此專門設計的任何東西?Perl測試::更多之前
0
A
回答
6
1
Test::More
的測試似乎每次測試之前運行Test::Builder::Module::builder
。你可以用這個替換這個實現。
{ package Test::Builder::Module;
my $old_imp = \&Test::Builder::Module:builder;
no warnings 'redefine';
sub builder {
Mypackage::setup_test();
goto &$old_imp;
}
}
如果這似乎太危險了,它實際上調用它像這樣:
sub is ($$;$) {
my $tb = Test::More->builder;
return $tb->is_eq(@_);
}
所以,你可以只推入了Test::More
的builder
的實現,因爲它調用一個在其父類:
{ package Test::More;
sub builder {
&stuff_I_want_to_do;
my $inv = shift;
return $inv->SUPER::builder(@_);
# OR return Test::Builder->new;
}
}
相關問題
- 1. Perl測試::更多和設置測試要求
- 2. IOS4之前的測試
- 3. 發佈之前測試AdMob
- 4. 測試在segue推之前
- 5. 測試用例觸發(插入之前,更新前)在頂點
- 6. 嘗試之前的測試專用鎖
- 7. 開發Perl和測試Perl
- 8. 使用perl PortState測試多播
- 9. Perl:集成測試
- 10. Python的單元測試,之前的測試案例聲明
- 11. 在任何其他測試之前運行的Symfony測試?
- 12. 由於之前的測試,Rspec單元測試失敗
- 13. 在執行測試之前更改TFS Build以部署
- 14. 在更改MySQL列類型之前進行測試
- 15. Postgres:在做之前測試插入或更新?
- 16. 如何在過程更新之前測試一個值plsql
- 17. 如何在發佈之前測試更新過程?
- 18. 在測試之前,您傾向於寫多少代碼?
- 19. 在測試失敗之前允許多個斷言錯誤
- 20. 如何在'測試'之前運行「包」
- 21. 在sbt-native-packager之前運行測試
- 22. 加快Foreach之前的測試連接
- 23. 在測試之前加載屬性
- 24. Angular - 發佈之前的測試庫
- 25. 安裝Rails之前的測試運行
- 26. 在單元測試之前備份CoreData
- 27. initial_data.json在測試之前未加載
- 28. npm運行測試之前生成
- 29. 獲得之前測試的結果
- 30. 測試admob在發佈之前工作
是否它被認爲是具有完全獨立單元的測試的重要組成部分?無論如何。你總是可以使用封裝你的測試值的函數,並將它們作爲參數傳遞給'Test :: More's函數。 –
也許你可以利用'subtest'。 – JRFerguson
我之前習慣的塊在每次單獨測試之前都會超時,所以它是完全獨立的。作爲一個臨時解決方案,我創建了一個名爲arrange()的函數,它爲我做了這個。不過,我試圖利用這個框架。 –