原文:
https://blog.csdn.net/li295214001/article/details/42077247
https://blog.csdn.net/jackie_xiaonan/article/details/49229139
一. 应用场景
在实际的测试过程中,可能会遇到由于程序执行的不间断性,我们无法构造测试场景来验证某个功能的正确性,只有通过代码级的调试才能验证功能是否正确。然而开发本地调试的话,不具有说服力,这时我们测试人员必须连接到linux下的基线版本代码进行远程调试
二. 调试步骤
1、部署服务工程到Linux系统下的Tomcat中,本文档重点是远程调式,为了防止文档篇幅累赘,这里就不介绍部署工程了。
2、更改tomcat远程调试端口
(1).更改Linux系统上的Tomcat启动文件远程调试端口,登录服务器,找到Tomcat安装路径,进入到bin目录
(2).打开目录下的catalina.sh文件,找到JPDA_ADDRESS=”8000”,8000代表远程调试端口,可以更改成其他没有被占用的端口,更改完成后保存退出。
3、以debug模式启动Tomcat
Windows下
进入目录下的bin目录,编辑打开startup.bat
在前面添加:SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
完成一行,不要断开。
Linux下(CentOS)
在catalina.sh中的首行添加: 注意:端口一定要是8000,其他的话试了几次连不上
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
另一种centOs方式:
进入tomcat的bin目录,输入./catalina.sh jpda run 或者 ./catalina.sh jpda start命令启动tomcat。启动会出现Listening for transport dt_socket at address: 8000 。(测试不成功。)
4、配置MyEclipse远程调试
(1).在需要远程调试的类中选择Debug Configurations菜单打开配置界面,如下图:
(2)在左边列表中双击Remote Java Application项,添加要调试的类,然后在右边添加Host项和Port项后点击<Debug>按钮。
Host代表Tomcat所在的Linux服务器IP
Port代表catalina.sh中配置的远程调试端口
5、lsof -i:8000 监听端口是否打开了
6、打开IE浏览器,输入URL连接提交请求,此时你在MyEclipse里面是不是看到了代码运行到了断点出就不往下运行了?