还在用GitHub?这个工具让你走进安全测试的大门

用了半年多 GitLab 真心觉得好用!有种相见恨晚的感觉,墙裂推荐指数★★★★★

代码提交时显示测试相关的状态已是常态,不过我看到很多开源的项目都没有把测试跑通。是的,仅仅是跑通都没有,这是我的一个在 GitLab 项目上的提交,显示了两个分支之间的代码覆盖率变化、代码风格合规、许可证合规、动态/静态安全扫描、密钥扫描等相关信息。浏览器性能检测和负载性能检测这张图里没有。

它能够很方便的提示给仓库维护者此次代码变更的质量,当然 BUG 还测不出来,跑测试用例的CI肯定是有的,不过我还没有看到官方支持的,大家可以研究讨论一下。

下面是一条在CI中启用了所有代码测试、安全测试、性能测试的流水线,因为是 Laravel 的仓库,所以这里我没有编译和构建的流程,直接部署就行。

blank

自 GitLab 13.2.0 开始,有一个依赖关系的无向图的测试功能(DAG),可以显示你的流水线之间的依赖关系:

blank

对没错,是不是感觉有些鸡肋,样式也不太符合现在的审美,还没有之前的流水线的 UI 看起来舒服一点。

项目安全页面中会列出所有被扫描出的已知漏洞:

blank

点击还能告诉你该漏洞的详细描述和解决方案,可以一键创建 Issue,我这里没有数据库注入漏洞,基本上都是一些小问题,很多都是由引用的包导致的。

最后,让我们来对比一下 GitHub 的安全页面,感觉还是太简单了,很空:

blank

是不是没有对比就没有伤害(手动狗头)?

blank

如何安装 GitLab 、如何从GitHub 迁移过来,可以查看官方文档,这里不再赘述

怎么跑这些 CI 千万不能只看文档,都是坑,得看 GitLab 官方仓库里正在使用的 CI 配置文件,文档中的示例可能会有各种问题无法跑通,详细的配置下一次我们再细说