linux 提高代码质量的工具
很多IT公司对于软件开发都有严格的分工,这包括设计、测试、服务支持等等。但是,我一直都认为只有开发者才是真正对软件质量负责的人。没有好的软件设计,软件质量基本上是无从谈起。当然,要做到这一点是需要额外的一些工具来进行保证的。因为这一段时间都是在linux上开发的,所以下面涉及到的工具基本上都是基于linux平台的。假设测试的文件名为test.c。
(1)测试代码覆盖率
- gcc -fprofile-arcs -ftest-coverage -o test test.c
- ./test
- gcov test.c
GCOV使用: http://blog.csdn.net/lishenglong666/article/details/8056777
(2)代码静态测试
- sudo apt-get install splint
- splint test.c
splint的学习与使用: http://www.cnblogs.com/bangerlee/archive/2011/09/07/2166593.html
(3)内存泄漏测试
- sudo apt-get install valgrind
- ./test
- valgrind --tool=memcheck --leak-check=yes ./test
(4)性能测试
- gcc test.c -pg -o test
- ./test
- gprof test gmon.out -p
(5)单元测试CUnit-2-0-1
- aclocal
- autoconf
- autoheader
- chmod u+x configure
- libtoolize
- automake --add-missing
- ./configure
- make
因为CUnit-2-0-1中有一个test_cunit代码,所以大家可以直接看看单元测试下是怎么运行和测试的。
上面的几个工具都是linux下测试的几个工具,大家可以根据自己的需要进行灵活的选择。当然,在实际开发中,我们需要把这些工具集成到makefile中,这样可以达到最好的测试效果。
参考链接:http://blog.csdn.net/feixiaoxing/article/details/39716601
linux 提高代码质量的工具的更多相关文章
- 提高代码质量 CheckStyle FindBugs PMD
提高代码质量-工具篇 注:这是一篇翻译文章,原文:How to improve quality and syntax of your Android code,为了理解连贯,翻译过程中我修改了一些陈述 ...
- Findbug在项目中的运用--提高代码质量
FindBugs是一个静态分析工具,它检查类或者 JAR文件,将字节码与一组缺陷模式进行对比以发现可能的问题.有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析 第一 手动安装 在Ec ...
- Web前端开发最佳实践(11):使用更严格的JavaScript编码方式,提高代码质量
前言 JavaScript语言由于其固有的灵活性,所以导致开发者可以写出很多诡异的代码,甚至一些较为正常的特性,如类型隐式转换.this的指代等等,也会让刚接触此语言的开发者头大不已.尤其是那些熟知其 ...
- JSLint JavaScript代码质量审查工具汉化中文版隆重发布
JSLint是一款JavaScript代码质量审查工具,它可以指出代码中错误.不规范的地方,非常之严格,甚至多写一个空格都会发出警告. JSLint的审查规则,根据众多前辈多年编程经验而写,字字珠玑, ...
- C++代码质量度量工具大阅兵
姊妹篇:Java代码质量度量工具大阅兵: https://www.cnblogs.com/jiangxinnju/p/10010177.html cppcheck cppcheck: https:// ...
- (转)提高代码质量---one
1. 摘要 这是烂代码系列的第二篇,在文章中我会跟大家讨论一下如何尽可能高效和客观的评价代码的优劣. 在发布了关于烂代码的那些事(上)之后,发现这篇文章竟然意外的很受欢迎,很多人也描(tu)述(cao ...
- 用 Eclipse 插件提高代码质量
如果能在构建代码前发现代码中潜在的问题会怎么样呢?很有趣的是,Eclipse 插件中就有这样的工具,比如 JDepend 和 CheckStyle,它们能帮您在软件问题暴露前发现这些问题.在 让开发自 ...
- SonarQube与Jenkins结合提高代码质量
首先,为什么需要SonarQube? 1.WriteClean Code 1)全局健康报告 2)关注新增的问题 3)强制QualityGate 4)Issue详情及建议- 详情参考:https:/ ...
- Java代码质量度量工具大阅兵
FindBugs FindBugs, a program which uses static analysis to look for bugs in Java code. It is free so ...
随机推荐
- Java基础高级部分(一)
1. 集合部分 1.1 HashMap排序 package cn.Douzi.hashMap01; import java.util.ArrayList; import java.util.Colle ...
- Nginx 学习笔记(十)介绍HTTP / 2服务器推送(译)
原文地址:https://www.nginx.com/blog/nginx-1-13-9-http2-server-push/ 我们很高兴地宣布,2018年2月20日发布的NGINX 1.13.9支持 ...
- 细说shiro之六:session管理
官网:https://shiro.apache.org/ 我们先来看一下shiro中关于Session和Session Manager的类图. 如上图所示,shiro自己定义了一个新的Session接 ...
- web-hacking
https://wizardforcel.gitbooks.io/web-hacking-101/content/1.html
- MVC 自定义路由
RouteConfig.cs 代码如下: public class RouteConfig { public static void RegisterRoutes(RouteCollection ro ...
- jinja模板语法
模板 要了解jinja2,那么需要先理解模板的概念.模板在Python的web开发中广泛使用,它能够有效的将业务逻辑和页面逻辑分开,使代码可读性增强.并且更加容易理解和维护. 模板简单来说就是一个其中 ...
- Java中使用到的锁
同一进程 重入锁 使用ReentrantLock获取锁的时候回判断当前线程是否为获取锁的线程,如果是则将同步的状态+1,释放锁的时候则将状态-1,只有将同步状态的次数置为0的时候才会是最终释放锁. 读 ...
- 浏览器通知--window.Notification
参考链接:http://blog.csdn.net/guoquanyou/article/details/51726571 Web Notifications是HTML5 的一个特性,目前我知道的有谷 ...
- 【blog】好用的markdown插件 - Mditor
效果 官网地址 GitHub: https://github.com/houfeng/mditor 主页: http://houfeng.net/mditor/
- SFTP远程连接服务器上传下载文件-vs2013项目实例
本项目仅测试远程连接服务器,支持上传,下载文件,更多功能开发请看API自行开发. 环境:win7系统,vs2013 vs2013项目实例下载地址:CSDN下载 如果没有CSDN积分,百度网盘下载(密码 ...