Fedora 19 Kdump 自动化测试套件 中期报告
来源:互联网 发布:ubuntu 16.04 主题包 编辑:程序博客网 时间:2024/05/16 18:57
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">Fedora 19 Kdump 自动化测试套件的开发到今天已经进行了一半时间了,在这一个月之间,开发出了一个雏形。虽然功能不完善,虽然架构设计仍然有很多需要完善的地方,但总算有一个最最基本的功能。下面对本软件的架构设计以及目前版本的使用方式做一简单介绍。</span>
架构设计
本测试套件主要目的是完成kdump在Fedora19上面的自动化测试工作,程序被运行后无需用户干预即可完成对Kdump的包括环境检测、系统参数检测、Kdump的配置、crash的触发、vmcore的收集等工作。
套件的流程为:
一、环境测试
1、检测相关软件是否安装,包括kexec-tools、crash、kernel-debuginfo,其中第三个为必选,前两个可选,前两个未安装时给出警告,第三个未安装时直接报错退出。
2、检测grub2中是否包含crashkernel参数,如果不包含则添加此参数,并将留给Kdump的内存值设置为128M。
3、添加完成后为使参数生效,必须重启系统。为了解决系统重启后套件仍可以自动完成测试的功能,在此采用编写系统服务的方法。在判断crashkernel参数时,若系统并未包含此参数,则添加参数并将服务设为开机自启动。但因为这样可能造成系统每次开机都要执行此服务,而造成反复出发系统crash,故需要在判断系统无需再次重启时将服务的开机自启动关闭。在本测试套件中,在判断系统已经添加了crashkernel启动参数后即关闭服务的开机自启动。
二、初始化
1、将原有的kdump.conf文件移动到一个固定位置,以便用户找到原有的配置文件。
2、从测试套件的配置文件读取相关配置,将相关配置写入新建的kdump.conf文件中,并且得到用户所需的crash方式及存储方式。之后调用相应的存储方式函数进行相关的磁盘、网络检测,条件符合之后重启kdump服务。
三、触发crash
根据crash方式选择相应的函数进行crash触发
使用方法
目前,测试套件只实现了部分功能,有些部分是写死的,故在操作过程中需要一些人为的操作。
测试套件目前只支持sysrq-c方式的nfs网络收集镜像,功能写死在程序中。如需进行测试需要改动代码中相应的部分。
使用时需要一台远程的nfs服务器配合,用来放置产生的vmcore文件。nfs服务器的地址、目录以及需要放置vmcore文件的目录需要在storefunc/nfs.py中填写:
def nfs(): print 'testing remote server...' nfsip = '10.33.28.9' nfsfolder = '/nfsfolder' storepath = '/kda' nettest(nfsip) f = open('/etc/kdump.conf','w') f.write('nfs '+ nfsip +':'+nfsfolder+'\n') f.write('path '+ storepath +'\n')nfs的ip填写在nfsip后面,nfs共享的目录填写在nfsfolder后面,需要放置在此目录下的具体文件夹填写在storepath后面
配置完成之后即可进行测试。
运行程序时,由于需要配置程序及服务等工作较多,故编写了安装脚本setup.py。可通过运行此脚本来进行测试套件的安装。它的流程为,将服务放入相应目录,之后将程序复制到相应位置,接着为主程序ftest.py赋予可执行权限,最后建立它的软连接,可使直接运行ftest命令即可进行测试。
# cd src/# python setup.py
安装完成之后会提示安装成功,这时即可通过命令
# ftest进行测试
在此过程中系统可能会重启。重启后不再会看到提示。只需耐心等待。几分钟后即可在nfs服务器的相应目录看到生成的vmcore
0 0
- Fedora 19 Kdump 自动化测试套件 中期报告
- Fedora 19 Kdump 自动化测试套件 结题报告
- Fedora 19 Kdump 自动化测试套件的总体设计
- Fedora 19 Kdump 自动化测试套件 进度情况0721
- Fedora 19 Kdump 自动化测试套件 进度情况0802
- 中期报告
- 中期报告
- 2、测试套件与自动化测试
- 提高自动化测试套件的可维护性 - 1
- 提高自动化测试套件的可维护性 - 2
- 提高自动化测试套件的可维护性 - 3
- 提高自动化测试套件的可维护性 - 4
- 提高自动化测试套件的可维护性 - 5
- 提高自动化测试套件的可维护性 - 6
- fedora 下kdump 配置
- MySQL测试套件中报告缺陷
- 我的中期报告
- 实习中期报告
- 文件空洞和ls,du命令
- window8下用u盘安装centos5.10(linux)
- Fedora源问题
- ETL 面试常见问题
- 堆和栈的区别
- Fedora 19 Kdump 自动化测试套件 中期报告
- java 工作流开发框架比较
- JDBC连接池的比较:DBCP、C3P0、Proxool 、 BoneCP
- 《程序员的自我修养》读后感
- Java中把数组转为一个List
- Android 有效的展示大图片(四)
- svn中如何列出所有branches下的分支?
- Why you should not shrink your data files
- Linux 库函数源码分析(1) --- memmove