zoukankan      html  css  js  c++  java
  • Windows 8 页面应用测试(4)

    修改并继续执行,恢复异常

    在某些情况下,当在Visual Studio 调试器进入代码后,用户可以修改变量的值,用户甚至可以更改逻辑声明。这就是Edit and Continue功能。

    Edit and continue将会在调试出现错误时起作用。没有必要停止并重新启动测试,并为避免异常进行更多的步骤,更加合理的做法是,在异常发生之前,可以立即“放松”对异常执行,然后改变违例的变量或者语句,然后在不抛出异常的状态下继续执行调试会话。

    尽管可以广泛的情况下使用Edit and continue功能,但是不支持Edit and continue功能的特定条件很难明确指出,因为这些条件与基于编程语言、程序栈的当前状态、调试器在不破坏进程下改变状态的能力有关。确定是否支持Edit and continue的最好方法就是尝试,如果不支持的话,调试器会立即通知用户。

    例四:

    在本示例中,运行调试器到出现异常,回退到异常,更改方法的逻辑,然后改变变量的值以便于继续执行方法。

    1) 调用MainPage构造器的Example方法。

    编辑MainPage()构造函数,并将methodTrack = String.Empty; 这一行替换为Example4();。

    2) 运行到异常。

    在Debug菜单中选择Start DeBuggging(快捷键:F5)启动测试对话框,再次按下F5重新开始执行。调试器在Example方法的异常处暂停测试,并且弹出异常对话框如下图11-13所示。

    11-13 弹出异常效果图

    3) 改变程序语法。

    很明显,错误出现在if条件中:当x只有为0时,应该改变x的值,而不是当x不为0时发生改变。选择Break对这个方法的逻辑语法进行修改,但是当用户尝试修改这行时,会弹出另一个对话框如图11-14所示。

    图11-14 弹出确认修改对话框

    选择Edit,然后将if(x!=0)改变为if(x==0),调试器就会改变源文件的逻辑语法。

    4)改变变量值。

    检查数据提示框或者Locals 窗口中的x值,它仍然是0。如果尝试执行曾经产生异常的声明,会再次抛出异常。另一种方式是直接改变x的值,在Locals窗口中,双击包含x行的列,将x的值从0改为1。如下图11-15所示。

    图11-15 修改变量

    现在按下F11进入之前抛出异常的声明语句中,现在会发现执行这一行将不会发生错误,然后再次使用F11离开。

    5)停止调试。

    在Debug菜单中,选择Stop DeBugging(快捷键:Shfit+F5)。这样就会结束测试对话。

  • 相关阅读:
    面试题
    面试题-基础篇(1)
    Windows定时器学习
    C++中类的多态与虚函数的使用
    Win32 SDK 编程开始, 创建窗口, 消息的处理, 消息循环
    线程同步(互斥锁与信号量的作用与区别)
    控制台程序实现暂停功能
    Linux下gcc编译生成动态链接库*.so文件并调用它
    Linux下安装ActiveMQ CPP
    activemq Linux下的编译
  • 原文地址:https://www.cnblogs.com/finehappy/p/2858234.html
Copyright © 2011-2022 走看看