为了减轻回归工作,日常巡检能力是非常必要的,那么网页巡检应该怎么做呢?

    工具选型

    获取网页信息是网页巡检的核心点,对此我们选取了 Puppeteer 开源工具,Puppeteer 是 Node.js 工具引擎,它提供了一系列 API,通过 Chrome DevTools Protocol 协议控制 Chromium 或 Chrome。

    Puppeteer 可以获取以下内容:

    • 网页访问是否正常:检查网页链接是否404,是否超时。
    • 网页调用的 API 信息:通过 page.on('requestfinished')获取网页 Network 信息,并过滤出 Type 为 xhr 的。这个时候就可以得到用户在访问网页的时候调用了哪些接口,包括接口的参数,接口的返回状态、返回值等。也可以优先过滤出 status 非 200 的接口重点关注。
    • 网页 Console 信息:网页如果发生错误,在 Console 里可能会出现一些错误信息。可以通过 page.on('console') 获取网页 Console 信息,同样可以过滤出 error 类型的。
    • 网页子链接
    • 其他自定义信息

    设计思路
    image.png
    平台能力

    • 定时巡检功能:可定时可手动。
    • 过滤 URL 功能:URL包含某些词才会进行巡检,或者包含某些词就不进行巡检。
    • 对比两个环境接口返回值:将预发环境和正式环境巡检得到的接口返回值进行对比,就可以进一步实现页面的接口巡检。
    • 巡检结果通知:巡检结果通过通讯工具通知到对应的负责人。
    • 与 UI 自动化打通:让巡检更有针对性;

    https://mp.weixin.qq.com/s/3UIccy_TdJW31_OWLfUkJw