C#调试程序 |
您所在的位置:网站首页 › c语音如何设置断点 › C#调试程序 |
C#调试程序——断点+观察数据的方法
目录C#调试程序——断点+观察数据的方法1.写本文的背景2.调试与测试3.断点调试3.1 F103.2 F113.3 SHIFT+F114.监视4.1 按照1方法打断点,单步调试。4.2 打开监视窗口4.3 输入变量4.4展开监视对象5.即时窗口5.1 输入对象或者属性5.2 观察数据6. 局部变量6.1 局部变量窗口6.2 显示变量7. 输出窗口7.1 打开输出窗口7.2 Debug输出指令7.3 数据输出成功如下8 C#计算一段代码的运行时间9 Assert数据断点
1.写本文的背景
因为程序的调试非常重要,他可以让自己不断地利用Visual Studio的强大去查找定位自己的问题所在之处。从而,达到纠正自己程序错误的地方,健壮自己的程序,让问题变得越来越少,程序变得越来越健康。故作此文,而且日后会将实用的调试程序方法不断进行迭代更新。 2.调试与测试调式与测试实际有异曲同工之妙,只不过对象不同。测试面向的是产品级,系统级;而调试往往是程序里的某一部分,某个方法,某个属性或者对象。最终效果也很类似,好的测试人员,测试方案可以将产品系统的问题解决在摇篮中;好的调试方法也会让你对程序的运行理解更深刻,对问题的查找定位变得更容易,让软件运行得更稳定。 3.断点调试 3.1 F10单步调试,会跳过自定义方法。 3.2 F11单步调试,会进入自定义方法执行调试。 3.3 SHIFT+F11跳出当前方法。 当鼠标停留在某变量上面的时候,会显示它的赋值情况 4.监视 4.1 按照1方法打断点,单步调试。 4.2 打开监视窗口在监视窗口输入要监视的对象或者属性,点击回车。
展开监视对象,在监视窗口可以观察关心的数据。
输入之后,点击回车。 在即时窗口观察关心的数据。
如下路径打开局部变量窗口。
对应的输出窗口会把所有的当前方法的局部变量进行自动显示。你也可以再此窗口中找到你关心的数据进行展开显示。 打开输出窗口如下图路径
这里需要将视图对象(即json序列)对象进行序列化。
利用System.DateTime.Now: static void SubTest() { DateTime beforDT = System.DateTime.Now; //耗时巨大的代码 DateTime afterDT = System.DateTime.Now; TimeSpan ts = afterDT.Subtract(beforDT); Console.WriteLine("所测试代码总共花费{0}ms.", ts.TotalMilliseconds); } 9 Assert数据断点在Nunit测试框架下(或者XUnit,MSTest都是同理) [Test] public void ColumnsShouldBeAutoGeneratedIfNoColumnsAreSpecified() { var package = _personList.ToPackage(); Assert.AreEqual(3,package.Workbook.Worksheets[1].Dimension.Columns); }Assert.AreEqual(3,package.Workbook.Worksheets[1].Dimension.Columns); 表示当package.Workbook.Worksheets[1].Dimension.Columns值等于3时,测试通过;不等于3时,在此处报错。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |