大佬,springboot 的应用启动 trace/start 之后,执行了一些操作,接着请求 trace/list, 总是返回空数组,是因为我使用 agent 的方法不对,还是这个 agent 不支持 springboot?具体步骤为:
能远程码
今年很多行业都压力很大,而我们 IT 行业除了工作压力之外,我觉得可能和很多 IT 的内敛性格很有关系。不管如何,健康真的很重要,每天尽量抽时间锻炼,尽量合理休息。
年龄有要求吗?
不知道分享式视频能否开源?
楼主是不是每个 case 都重新启动 App 呢?如果是的话,我之前也是因为这样,二十个 cases,在 Android 上跑完十五六个 ADB server 就挂掉了
#16 楼 @chenhengjie123 再奋战了一天时间,问题还是没有解决,因为我的 cases 有的需要登录,有的不需要登录,以返回方式处理,感觉太不理想了。尝试了 Appium 的 closeApp 和 launchApp 方法,但是运行时间超过十几分钟之后,同样会发生 Appium server 连接不上的问题,并且报了 404 错误,如下:
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.562 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close 404 1.125 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.788 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch 404 1.307 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.573 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close 404 0.545 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.969 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch 404 0.598 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.574 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/close 404 0.538 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.419 ms - 40
info: --> POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch {}
info: <-- POST /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/appium/app/launch 404 0.595 ms - 40
info: --> GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot {}
info: <-- GET /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904/screenshot 404 0.591 ms - 40
info: --> DELETE /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904 {}
info: <-- DELETE /wd/hub/session/64ef1ea4-bbf1-4621-9d86-d5b341faa904 404 0.667 ms - 40
info: [debug] Didn't get a new command in 300 secs, shutting down...
info: [debug] Trying to stop appium but there's no session, doing nothing
info: [debug] We shut down because no new commands came in
感觉 Appium 太难用了,慢还不是主要障碍。考虑用 Robotium 做 Android 的 automation 了。谢谢@xubin98246 @sanlengjingvv 关注和帮助
#14 楼 @chenhengjie123 界面方式,回退使用的是 WebDriver 的 back() 吗?
#10 楼 @sanlengjingvv 感觉,重启 appium server 这种方式,有点奇怪。现在研究的结果就是,我每个 case,都会 new 一个 AppiumDriver,就是说每个 case 都会重新和 Appium Server 创建一个新的 session,估计是这种频繁创建 session 的操作导致了 adb 和 Emulator 失去了连接。我再想想有什么办法先,谢谢。
#11 楼 @chenhengjie123 teardown 我还是知道的,case 的结束有可能是 pass,有可能是 failed,那回退到开始界面所需的步骤就是不确定了呀
#8 楼 @chenhengjie123 如果不频繁开关 app,每个 cases 之间的影响岂不是很大,这样子上面一个 case 失败了,界面停留在 failed case 当前界面,其他 case 如果不是从当前界面继续,该怎么办?请前辈赐教,谢谢。
#6 楼 @chenhengjie123 @xubin98246 尝试了用 override-session flag, 每次重新打开 APP 的时候,都会覆盖掉之前的 appium session,总共 17 个 cases,每次运行至第七个的时候,就开始 adb 个 Emulator 连接不上了。如果是 adb 本身的稳定性问题,那 Appium 依赖于 ADB 来执行,岂不是下策?看见 appium 在国内这么流行,不知道各位前辈如何解决这个问题?
#3 楼 @xubin98246 你好,刚才跟一个使用 Robotium 的同事讨论一下,他说 case 里面频繁的 Close Application 和 Open Application,就会导致 adb 运行过程中自动关闭了,不知道是否由此一说。PS:我每个 cases 都会重新打开 app,结束后,就会关闭 app,这种思路不知道是否有问题?谢谢
#3 楼 @xubin98246 嗯,我找到了,Desiredcapabilities 里面设置,现在设置为 120 了。但是连续运行 cases 之后,大概十几分钟,都会导致某个 step block 大概 10 分钟,然后就会 adb devices 找不到设备了,接着所有剩下的 cases 都 failed 了。
#1 楼 @xubin98246 newCommandTimeout 这个是 function 吗?我在 AppiumDriver 上没看到有这个 function 的。另外我详细查看发现,当发生上面接受命令超时的时候,ADB devices 找不到当前启动的虚拟机了,但实际是启动的,好奇怪
#40 楼 @chenhengjie123 Soap UI free 版本也是可以的,用 groovy 做 data driven 和 dynamic response check,或者你可以先用 Java 做好扩展,在 soap ui 上用 groovy 简单调用就行