API Sanity Checker在Ubuntu中的使用

API Sanity Checker是一个自动生成单元测试用例的工具,可用于链接测试。它可用于三大桌面平台,下面简单介绍它在Linux下的使用步骤:

1.      从http://ispras.linuxbase.org/index.php/API_Sanity_Autotest 下载最新的api-sanity-checker-1.98.6.tar.gz ;

2.      从http://ispras.linuxbase.org/index.php/ABI_Compliance_Checker下载最新的abi-compliance-checker-1.99.9.tar.gz ;

3.      从http://ftp.gnu.org/gnu/binutils   下载最新的 binutils-2.24.tar.gz(不需要安装,Ubuntu中已安装,安装也不要按照第7步中的命令,否则对Linux系统中的个别文件会有所破坏,如安装后gcc  -shared命名不能使用了,);

4.      从http://www.perl.org/get.html下载perl5,可以通过命令perl  -v来判断是否已经安装;

5.      从http://ctags.sourceforge.net/下载 ctags或者直接用sudo  apt-get  install ctags(这个也可不安装) ;

6.      将以上文件存放到/home/spring/LinkTest目录中,并解压缩到当前目录下;

7.      安装binutils,进入到此目录下,依次执行:(1)、 ./configure ; (2)、 make ; (3)、make  install(或sudo  make install);

8.      安装abi compliance checker,执行命令:sudo perl Makefile.pl -install --prefix=/usr ;

9.      安装api sanity autotest,执行命令:sudo perl Makefile.pl -install --prefix=/usr

10.  测试代码使用http://blog.csdn.net/fengbingchun/article/details/41413381

11.  将终端定位到/home/spring/gdbtest/demo/test ,输入命令: gcc -shared/home/spring/gdbtest/src/add/add.cpp/home/spring/gdbtest/src/subtract/subtract.cpp -o libtest.so ,则会在test目录下生成一个libtest.so动态库;

12. 在test目录下创建一个test.xml文件:

<version>
    2014.11.30
</version>

<headers>
    /home/spring/gdbtest/include
</headers>

<libs>
    /home/spring/gdbtest/demo/test
</libs>

13. 在终端输入命令:api-sanity-checker  -lib  test1 -d  test.xml  -gen ,则会在test目录下生成logs和tests两个文件夹,logs/test1/2014.11.30/log.txt,此txt文件中包含了列举了需要用到的头文件和类,以及一些错误信息;tests/test1/2014.11.30/下会有比较多的文件,如测试用例文件groups/add/functions/_Z6CalAddfff/test.cpp,其内容为:

#include <add/add.h>
int main(int argc, char *argv[])
{
    CalAdd(1.5f, 2.5f, 3.5f); //target call
    return 0;
}

14.      输入命令:api-sanity-checker  -lib  test1  -d  test.xml -build,则在tests/test1/2014.11.30/groups/add/functions/_Z6CalAddfff/等对应文件下生成test执行文件,如在编译中出现错误,则会在tests/test1/2014.11.30/目录下产生一个build_fail_list文件;

15.      输入命令:api-sanity-checker  -lib  test1  -d test.xml  -run,则会在当前目录下生成一个test_results文件夹,/test_results/test1/2014.11.30/test_result.html文件会有相应结果分析信息说明,如在run中有测试用例错误,则会在tests/test1/2014.11.30/目录下产生一个run_fail_list文件;

16.      api-santify-checker的详细用法可参考/api-santy-checker-1.98.6/doc目录;

17. 其它类似工具可参考: http://www.opensourcetesting.org/unit_c.php

时间: 2024-10-06 10:24:08

API Sanity Checker在Ubuntu中的使用的相关文章

在Ubuntu中安装Docker

前言 网上已经有很多介绍Docker安装的文章,自己的安装过程记录一下,为了博客文章结构的连贯性,为写下一篇R和Docker的相遇做为环境基础,同时也给自己一个备忘. 目录 Docker是什么? 在Linux Ubuntu中安装Docker Docker镜像仓库 制作自己的Docker镜像 上传Docker镜像到公共仓库 完整文章:http://blog.fens.me/linux-docker-install/

Ubuntu中python环境下import requests错误的解决(学习过程问题记录)

python中导入模块:import requests提示错误,错误信息描述如下: >>>import requests Traceback (most recent last):   File "<stdin>", line 1, in <module> ImportError:No module named requests 意思就是说没有名为requests的模块,解决方案是在命令行下使用 pip install requests 来进行

如何在ubuntu中搭建ruby开发环境

Ubuntu是一个以桌面应用为主的linux操作系统,在进行项目开发的时候,需要在ubuntu中安装ruby开发(http://www.maiziedu.com/course/ruby-px/)语言,主要是考虑到项目的高可变性,以及由此产生的高适应性,所以选择用ruby.跟Java相比,ruby的确比较灵活,能写出千变万化的代码. 但是,比较可悲的是,在windows7上面搭建ruby环境问题比较多.无论是基于cgywin,还是直接使用netbeans都不尽如人意. 因为想调整webserver

ubuntu中的django安装配置与操作

1 在对django安装(http://www.maiziedu.com/course/others/307-3024/)前,我们要确保python软件已经安装,ubuntu中默认有安装的.我们只需要安装django即可,解压django压缩文件,进入解压后的文件夹,运行,python setup.py install即可安装django到python中. 2 创建django项目,首先在任意位置创建文件夹,这里是在python用户下创建work文件夹,接着进入work运行一下命令即可创建dja

Ubuntu中使用source报错处理办法

最近一段时间在使用Bash on Ubuntu on Windows做shell脚本调试时发现在脚本中使用source时会报错,上网查了下才了解到原来是在Ubuntu中使用的并不是bash,而是使用优化过的dash,而在dash中是没有source,而在bash中才有source,这就有点麻烦了,平时在写脚本时有时会调用系统的function和一些自定义的function,没有source确实有点不太方便,而在此时可以在使用dpkg-reconfigure来修改配置dash,在平时可以用以下方法

关于ubuntu中的软件安装

在ubuntu中一般使用apt-get来安装软件工具, 例如 sudo apt-get install g++ apt-get会在镜像库中找到你需要的软件镜像(例如 g++)来安装,那么apt-get 是在哪里找的呢? 在 ubuntu中,文件/etc/apt/sources.list中写着一系列linux镜像源的服务器地址,apt-get就是在这些服务器上找安装文件的. 关于sources.list的更多内容查看   关于Ubuntu的sources.list 的总结 还有一种办法就是离线安装

ubuntu中KDE与GNOME安装切换

转载:http://apps.hi.baidu.com/share/detail/18919303 1.在Ubuntu中安装KDE桌面命令 sudo apt-get install kUbuntu-desktop 注销 Ctrl Alt Backspace 2.设置中文环境 sudo apt-get install language-pack-kde-zh language-pack-kde-zh-base language-pack-zh language-pack-zh-base langu

Ubuntu中Nginx的安装与配置

Ubuntu中Nginx的安装与配置 1.Nginx介绍 Nginx是一个非常轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和 反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器. 2.对PHP支持 目前各种web 服务器对PHP的支持一共有三种: (1)通过web 服务器内置的模块来实现,例如Apache的mod_php5,类似的Apache内置的mod_perl 可以对perl支持. (2)通过CGI来实现,这个就好比之前per

Ubuntu中修改设备的名字

在虚拟机中装的Ubuntu,开机发现名字很长一串.virtual-还有什么 一串 sudo gedit /etc/hostname sudo gedit /etc/hosts 用这两条命令,把那一串字符修改成你想改的名称,比如Ubuntu. 重启. 解决. Ubuntu中修改设备的名字,布布扣,bubuko.com