provider 的 spawn() 方法里面 在 fork device 的时候会传端口号。建议先缓存好 port 对应关系,在原 ports.splice(0, 4) 的地方替换成你的逻辑,拿到固定的端口号,然后传给 fork
我这两天也在搞 iOS 方面的支持。欢迎交流。
其实就是 adb connect
具体什么问题?
建了个 QQ 群 (850643090) 大家有问题可以加群问,回复比较快。
你是想调一个接口把某台设备标记为占用状态是吧?然后用完了再标回来?STF 本身就是这样的。
我整理了一个 xmind 可以发给你
http://192.168.1.113:0 这个端口号不对吧,默认应该是 8100,你用 xcode 打开 WebDriverAgent.xcodeproj 看一下代码,是不是改过了?
肯定不能以消费者成功消费作为判断依据,而且要单独考虑两者的独有情况,包括 MQ。一条 case 做到每个 check point 都考虑到,也无所谓分不分开了。
学习了,能说一下设备管理这部分具体是怎么设计的吗?
没装 webpack 吗?windows 下我没试过,但是应该不影响吧
我是在 webstorm 直接运行的 local,修改会自动生效啊,不用重启 stf。
websocket 本身就是长链,自己写压测客户端吧。
STF 前后端交互,设备交互那块是通过 websocket 进行的,前端部分主要看 stf/res/app/components/stf/control/control-service.js,这个是封装了 websocket 消息,比如通过 sendTwoWay('device.install', options) 发送一个 device.install 消息和一个 options 对象给 STF 的 websocket 进程 (是 stf 的一个 node 进程不是我们通常说的 ws 协议),options 对象包含了安装 app 的信息。然后就去看 stf/lib/units/websocket/index.js,这个就是前面说的 websocket 进程的源码,找到 device.install 消息处理的地方,可以看到会发送一个 InstallMessage 的 PB 消息,实际处理是在对应设备的 device 进程内,大致就是这个过程。
AutoClick 是单独的一个 module 吗? 配置了 LAUNCHER_ACTIVITY 是被测 app 的 PackageName+ActivityName 还是提示 java.lang.ClassNotFoundException。应该怎么配置?