在 Git 分支之间对 Perl 函数进行基准测试



我目前正在 Git 版本控制下对一个大型应用程序进行一些重构。我希望能够在我的主分支和不稳定分支之间对修改后的函数进行基准测试。

目前我正在考虑做一个简单的脚本,例如:

use Benchmark qw(:all) ;
use my_module ;
$count = -10
# Checkout my master code
system qw(git checkout <my_currently_in_production_version>) ;
timethis($count, sub {my_function()});
# Checkout my unstable code
system qw(git checkout <my_currently_unstable_version>) ;
something_to_reload_my_module();
timethis($count, sub {my_function()});

但这对我来说有点黑客。是否有任何更干净的解决方案来对 Git 分支之间的函数进行基准测试?

感谢您的任何帮助

编辑:我主要在寻找类似基准测试模块的东西,但如果存在,则支持分支更改。

好吧,您需要签出每个版本,但我不会尝试"卸载"任何东西。那只是自找麻烦。这意味着需要运行两个 Perl 解释器:一个用于旧代码,一个用于新代码。

我要做的是编写一个脚本来执行适当的计时并将结果保存到文件中。在两个结帐时运行它。让第二个脚本比较结果。

git checkout stable
../tools/time_test > stable
git checkout unstable
../tools/time_test > unstable
compare_times stable unstable

(前四行可以通过compare_times通过system来完成。

相关内容

  • 没有找到相关文章

最新更新