我以前每天使用Fitnesse,但忘记了如何在调试模式下运行测试(或输出堆栈跟踪信息) - 有人知道吗?
我记得能够在运行/启动fitnesse.jar时将其配置为标志,或者将其配置为URL参数(例如http://localhost:8090/FitLibraryWeb.MyTest?test&debug=true)
答案 0 :(得分:3)
要调试.Net中的灯具,我通常在我的C#灯具代码中添加Debugger.Break()
答案 1 :(得分:0)
我暂时没有这么做,但FitNesse附带的当前文档表明你很接近。您应该使用 remote_debug 而不是调试。
最好的方法是从您的FitNesse副本附带的文档开始,因为它与您正在运行的文档相匹配。如果您在端口8080上运行,则以下链接应该有效:http://localhost:8080/FitNesse.UserGuide.DebugingFixtureCode。
假设您使用的是Java,这些说明应该有所帮助。如果您使用的是其他语言,我不确定是否可以提供帮助。
答案 2 :(得分:0)
您考虑使用 RunnerW.exe 而不是Runner.exe。
如果您将测试运行器更改为RunnerW,则会出现一个弹出窗口,其上带有“go”按钮,并且在您点击它之前不会启动fitnesse测试。
在点击之前你可以附加到任何进程(如果使用VS,通过调试菜单中的'Attach To Process'),执行将在设置的断点处暂停。
注意:FitNesse必须使用与您正在调试的代码相同的版本。
您还可以使用远程调试器附加到远程进程。
此外,如果您附加RunnerW.exe进程,则可以自行调试fixture。
答案 3 :(得分:0)
虽然Rustin's DebugBreak() suggestion已经指出了我的首选开发解决方案,但备用解决方案是调用 RunnerW.exe ,这需要将以下行添加到目标Fitnesse测试页< / p>
[[Press me to start in remote debug mode][?responder=test&remote_debug=true]]
请记住,我假设您的测试页已定义指向 RunnerW.exe 的 REMOTE_DEBUG_RUNNER ,如Fitnesse guide's Customizing Test Execution section中所述
为简单起见,我将提供一个样本拟合测试标题。
所以,这里是如何使用Visual Studio进行远程调试:
!define TEST_RUNNER {FitSharp\Runner.exe} !define REMOTE_DEBUG_RUNNER {FitSharp\RunnerW.exe} [[Press me to start in remote debug mode][?responder=test&remote_debug=true]] The rest of your test specification goes here
作为实际解决方案,我使用以下策略:
!include .SetupEngine
请注意 .SetupEngine (这是一个路径)上的。(点)是指您的Fitnesse根页。你可能需要调整它。
当我提到Fitnesse.UserGuide's remote debug section
时,我有这种想法希望有所帮助
答案 4 :(得分:0)