刚刚使用VS2010创建了一个新的ASP.NET网站(没有改变任何内容)
单击 Test 菜单项,使用 Test Wizard 生成测试。选择PageLoad of Default页面以生成测试。
这创建了一个测试Page_LoadTest
,除了调试器没有在我放入Page_LoadTest
测试的断点处停止时,所有工作都正常。
生成的测试方法如下
<TestMethod(), _
HostType("ASP.NET"), _
AspNetDevelopmentServerHost("c:\documents and settings\z08763ddev\my documents\visual studio 2010\Projects\WebApplication3\WebApplication3", "/"), _
UrlToTest("http://localhost:1560/"), _
DeploymentItem("WebApplication3.dll")> _
Public Sub Page_LoadTest()
Dim target As _Default_Accessor = New _Default_Accessor() ' TODO: Initialize to an appropriate value
Dim sender As Object = Nothing ' TODO: Initialize to an appropriate value
Dim e As EventArgs = Nothing ' TODO: Initialize to an appropriate value
target.Page_Load(sender, e)
End Sub
答案 0 :(得分:2)
不是选择运行选定的测试,而是调试所选测试的下拉箭头。如果您只是运行测试,您将拥有您所看到的行为。没有断点会被击中。
但是,如果您专门选择调试选定的测试,您的断点将被点击,执行将暂停以进行调试。
答案 1 :(得分:2)
显然使用主机“ASP.NET”属性导致断点不停止。如果我更改主机类型断点有效。但是,我仍在试图弄清楚如何在“ASP.NET”主机中使断点工作
答案 2 :(得分:1)
尝试将此行添加到单元测试中,而不是设置断点:
System.Diagnostics.Debugger.Break();
这将导致JIT调试器询问您是否要调试w3wp.exe,它将允许您选择Visual Studio的新实例来进行调试。