一个项目,启动要 5min+时间,修改完 case 执行一下也需要 5min+,太浪费时间了
有没有什么办法能执行 case 的时候不用重新 spring 容器
1
spike2017 2022-09-16 14:24:21 +08:00
所有 case 写在一个类
|
2
freeminder 2022-09-16 14:41:22 +08:00
哈哈哈这个我知道,最近刚弄完
1. 写一个 testcase ,包一层 for 循环 N 次, 调用真正的 doTest 方法,在 doTest 下断点调试 2. 在需要修改的文件上改动代码,改完之后右键 recompile ,会弹框提示是不是 reload ,在这个时候放开断点会执行新的代码;不同版本不一样,有个 debugger 热键 compile and reload 一些备注: 1. 步骤一的循环 N 次也可以配置 run/debug 参数里面 repeat 多少次,但是有个问题是停止 debug 要点两下,不然会 repeat 完 2. idea 的 reload 文档 https://www.jetbrains.com/help/idea/altering-the-program-s-execution-flow.html#reload_classes 3. 文档里面有 HotSwap limitations 注意看,部分修改是不可 reload 的,可以调试的时候避开类似的修改,最后全写完再重构一下 4. 步骤 3 的限制可以通过替换 vm 实现 DCEVM 看你想折腾什么样子了,这个直接在 vm+debug 上改感觉和框架无关很爽 |
3
lslvxy OP @freeminder 这方法不错,我试一下
|