AndroidStudio debug调试、单元测试

来源:互联网 发布:mac没声音 编辑:程序博客网 时间:2024/05/29 04:47
debug调试

1:首先是设置断点:在需要的代码行,左侧的行号旁边点击即可


2:选择debug模式运行代码:


3:运行成功后会程序会定在第一个断点出,并在显示log的区域,出现Debug调试视图,和log的显示。该区提供了调试的主要操作,和你所熟知的一样的,主要有:Step over、step into、force step into、step out、drop frame。


4:Show Execution Point:点击该按钮,快速定位当前调试的位置,并将该行高亮的显示出来。


5:Step Over:单步跳过,点击该按钮将导致程序向下执行一行。


6:Step Into:单步跳入,执行该操作将导致程序向下执行一行。如果该行有自定义的方法,则进入该方法内部继续执行,需要注意如果是类库中的方法,则不会进入方法内部。


7:Force Step Into:强制单步跳入,和step into功能类似,主要区别在于:如果当前行有任何方法,则不管该方法是我们自行定义还是类库提供的,都能跳入到方法内部继续执行


8:Step Out:如果在调试的时候你进入了一个方法(如f2()),并觉得该方法没有问题,你就可以使用stepout跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。


9:Force Run to Cursor:忽略断点,跳到光标处,比如我们一共有三个断点,当前在第一个,我们想直接调试第三个断点后的代码,那么将光标放到要调试的位置,点击这个即可。


10:Evaluate expression:点击该按钮会在当前调试的语句处嵌入一个交互式解释器,在该解释器中,你可以执行任何你想要执行的表达式进行求值操作。

比如,我们在调试时执行到以下代码: 


此时执行Evaluate Expression,就相当于在调试行之前嵌入了一个交互式解释器,那么在该解释器中我们能做什么呢?在这里,我们可以对result进行求值操作:对着你想要求值得位置点击鼠标右键,选择evaluate Expression.此时会显示如下: 


在弹出的输入框中输入求值表达式,比如这里我们输入Math.min(result,50),如下图


点击执行,我们发现在Result中已经输出了结果,如下: 


单元测试

1:在src路径下除了有个main文件还有一个androidTest,这个就是AS专门提供给我们用来进行单元测试的,创建一个测试类,MainTest,好,那么如果想让这个类执行单元测试的话,那么必须继承一个叫做AndroidTestCase的类,之前在Eclipse中进行单元测试的时候,除了要继承这个类之外还要在清单文件中进行配置,在这个类中创建一个测试的方法:



2:testAdd,这里需要注意一下的,这个方法必须以test打头。



3:好基本就是这么简单,运行话,选中要测试的方法,右键 Run → testAdd() 注意是第二个不是第一个,也就是旁边有个小机器人的
第一个是基于gradle进行测试的,

4:提示错误:



5:将 c比较的int值改为3:再次运行测试:



6:有个问题就是有的哥们右键运行 run → 没有选择测试的方式:这里有两种处理的方式:

①:将这个方法重新创建一下,修改个名字就行了。

②:在上面的工具栏中进行编辑修改,Edit Configtions... 



选择Defaults → 选中Android Tests 点击左上角的 + 号 ,添加一个Android Tests ,起个名字比如说MyTest 在下面的下拉选项中,选择module 选择当前的module,注意这个的话 在as低版本有个小小的bug,如果选项什么都没有的话,那么关闭编辑框,再次打开就有了,
然后在Test中选择具体测试的内容,比如 All in Module、 All in Package、 Class、 Method 等,
那我们当前测试的是方法,所以选择Method就行了,然后选择具体的和方法,在Targer Device中选择 第一个 Show choose就ok 了。


0 0
原创粉丝点击