工程效能领域,测试覆盖率度量总是绕不开的话题,我们也不例外.在七牛云,我们主要使用go语言构建云服务,在考虑系统测试覆盖率时,最早也是通过围绕原生go test -c -cover的能力来构建.这个方案,笔者还曾在 MTSC2018大会上有过专项分享.其实我们当时已经做了不少自动化工作,能够针对很多类型的代码库,自动插桩服务,自动生成TestMain()等方法,但随着接入项目越来越多,以及后面使用场景的不断复杂化,我们发现这套还是有其先天局限,会让后面越来越难受: 程序必须关闭才能收集覆盖率.如…
golang 统计系统测试覆盖率 参考资料 https://www.elastic.co/blog/code-coverage-for-your-golang-system-tests https://www.cnblogs.com/zhaoxd07/p/8028847.html 操作步骤 编写main_test文件 看一下main()函数所在的go文件名称,直接命名为*test.go文件即可.如motan的main()函数在agent.go中,将main test文件命名为agenttest.…
写了几年C语言代码,最近在思索,何去何从比较好? 搜索了一下,发现几个答案: 2015年10月编程语言排行榜 丢开C语言在教学应用外.在目前C语言的实际应用中.常见的应用的情景有如下: 内核/驱动,bootloader,Android HAL驱动和Linux库.前两者其实跟应层打交道比较多,后两者算Linux C的应用程序,用POSIX接口比较多.所以有在Android 产品这一层,C语言以及Linux相关知识绝对有需求. 所以C语言,特别是嵌入式C语言很难上手的.训练一个人熟练开发C程序,和训…
三角形拾取 http://www.blackpawn.com/texts/pointinpoly/default.htmlCS NavMesh使用手册https://developer.valvesoftware.com/wiki/Navigation_MeshesNavMesh drpexe.comhttp://drpexe.com/category/ai/pathfinding/ an overview of pathfinding in navmeshhttp://paper.ijcsns…
1. warning: suggest parentheses around comparison in operand of '&' 分析: &运算符的优先级较低,低于==和!=运算符. solution: 在&比较之后,加一个括号. demo: 错误: 正确:…
1 strtok :分解字符串为一组字符串.s为要分解的字符串,delim为分隔符字符串.首次调用时,s指向要分解的字符串,之后再次调用要把s设成NULL. 2 strstr :从字符串str1中查找是否有字符串str2,如果有,从str1中的str2位置起,返回str1中str2起始位置的指针,如果没有,返回null.…
1. element-ui dialog组件添加可拖拽位置 可拖拽宽高 https://segmentfault.com/a/1190000012940145…
近日,Li Yiyang 老师基于Goc做了个VS Code插件,能够直观的看到被执行到的代码,当真充满想象力: 感兴趣的同学可以去goc仓库查看详情. Goc的核心能力就在于能够帮助我们在被测程序运行时收集覆盖率结果,而这就为精准测试提供了技术支撑.基于此,有很多的想象力空间,亟待大家发挥. 为方便彼此交流,我们建立了goc讨论群,大家可以去goc github主页扫码加入.目前该群已汇集了一帮对goc感兴趣的小伙伴,大家在沟通中碰撞出了不少非常有价值的需求,比如: goc profile 支…
"聊点干货" 覆盖率技术基础 截止到Go1.15.2以前,关于覆盖率技术底层实现,以下知识点您应该知道: go语言采用的是插桩源码的形式,而不是待二进制执行时再去设置breakpoints.这就导致了当前go的测试覆盖率收集技术,一定是侵入式的,会修改目标程序源码.曾经有同学会问,插过桩的二进制能不能放到线上,所以建议最好不要. 到底什么是"插桩"?这个问题很关键.大家可以任意找一个go文件,试试命令go tool cover -mode=count -var=Co…
樊登有一节课讲的挺有意思,说中国有个组织叫绩效改进协会,专门研究用技控代替人控的事情.其用麦当劳来举例子,他说麦当劳其实招人标准很低,高中文凭就可以,但是培养出来的人,三五年之后,每一个都是大家争抢的对象.为什么呢?因为麦当劳的标准化做的很好.其中有一个例子是说,麦当劳的汉堡,出炉之后,15分钟之后没卖掉就扔了.大家想想,如果你是领导,你如何让员工遵循这个标准?而麦当劳的解决方案说起来也简单,汉堡做出来之后就放入保温箱,15分钟后保温箱就会报警,通知餐厅经理该批次的汉堡过期了需要丢弃. 人是组织…