• 已删除 at 2020年02月04日

    RPC 也是基于 TCP 协议的,goreplay 支持 TCP 会话录制回放,不过效果好不好不敢肯定,确实没试过。这个录制回放其实就是把字节码再传一遍,直接传对于会话鉴权这种可能还是会有问题,我在实验中 http 请求也是用了 middleware 来处理会话 cookie
    goreplay 还有个收费的 pro 版本功能更强大一些

  • 已删除 at 2020年02月04日

    这点确实是最难的😅

  • 已删除 at 2020年02月04日

    嗯嗯,可以的,goreplay 录制时每个请求上面都有个 uuid 和时间戳,可以标记每次请求,可以做到接口级别的 diff

  • 不想争论太多哈,xpath 和 id 想对来说用的还是自认为还是比较熟,而且 jquery 和 vue 我都用过写过页面,对这两种前端框架还是有一点了解,你可以找一个 vue 的页面写个 selenium 脚本试试看。
    xpath 定位是不难,但是如果每一个元素都需要从父级或者父级的父级,或者 n 代祖宗开始,你就知道有多蛋疼了,请问原来 jquery 页面会是这样吗?即便你玩的 xpath 玩的很溜,这都基本不影响你效率,那项目内推广呢,后续维护呢?你是不是需要想再回想下 xpath 的层级关系

  • 1、我说 id 只是一个比较浅显的比方,其实这是涉及到前端开发数据交互的一种方式,原来类似与 jquery,前端需要考虑数据交换,比方说一个输入框,他需要获取这个款输入的值,他也会主动的在的个控件上加个 id(即使不加也会在上级加个标识 class 之类),这个跟自动化测试其实是一致的,就是说你需要操作这个控件,前端也需要,他们会主动加。换成 vue 就不一定了 (实际上在大多数场景下不要了,而且大多数开发者认为 vue 下直接操作 dom 会影响性能,会尽量避免),这就造成现在的 vue 页面控件基本上没有人为设置的属性标识。对于这样一种页面,有些 xapth 玩的溜的也可以定位,但是效率会大打折扣。
    2、当然有些大佬在团队内有话语权,推动前端去主动加 id,这个问题对于他们是不存在的😏

  • 最大的痛点我认为是现在 vue 采用数据双向绑定,前端不会在控件上加类似 id 进行标识,以方便操作 dom,用 selenium 做自动化时由于页面上大部分控件都没有特殊标识,定位很麻烦(不是说不行,可以通过 xpath 用文本等方式定位,但相比 id 定位这种方式复杂很多)

  • 模拟输入键值或移动鼠标这些是不行的

  • enter...enter...enter

  • Cypress - 翻译工作初步完成 at 2019年07月12日

    大佬辛苦了

  • 引入 jar 包,直接用 junit 或 testng 写用例就好了