一种结合hudson的算法自动化测试构想
2016-01-17 17:20
615 查看
作者:朱金灿
来源:http://blog.csdn.net/clever101
有时我在思考:未来软件测试的趋势是什么?其实答案和其它行业一样简单:低技术含量的测试工作都将由机器承担,人只能干机器干不了的活。这意味着什么?所有的黑盒测试将不复存在,测试人员将用来分析测试结果。
大话说完了,下面具体谈谈我构想的一种结合hudson的算法动化测试构想。大家知道,在编译完成之后hudson是可以执行一系列的批处理脚本。因此我们可以在编译完成后加入自动化测试的批处理脚本。批处理脚本具体执行哪些内容呢?我们假设这样一个应用场景,软件是由很多算法组成的,也就是说对于测试人员来说算法测试是一个工作量比较大的任务。算法模块以一个个dll的形式存在,因此我们可以开发一个算法加载器(AlgoRun.exe),专门来加载这些算法dll。算法加载器是一个带参数的命令行程序,其带的唯一参数是一个xml文件,具体用法是:
AlgoRun.exe xml文件。
xml文件为一个算法参数配置文件,比如某个算法配置文件内容如下:
然后自动化测试脚本可以写成这样:
这样可以在每日构建服务器上部署自动化测试的批处理脚本,每天晚上编译好最新的算法后运行算法自动化测试脚本,早上测试人员上班后就可以看到最新的测试输出了。如果要修改算法测试参数,只需要修改对应的xml文件即可。这样做的好处是充分利用服务器的计算资源和晚上的时间,测试人员只需要把精力放在分析处理结果的对错和精度方面。
来源:http://blog.csdn.net/clever101
有时我在思考:未来软件测试的趋势是什么?其实答案和其它行业一样简单:低技术含量的测试工作都将由机器承担,人只能干机器干不了的活。这意味着什么?所有的黑盒测试将不复存在,测试人员将用来分析测试结果。
大话说完了,下面具体谈谈我构想的一种结合hudson的算法动化测试构想。大家知道,在编译完成之后hudson是可以执行一系列的批处理脚本。因此我们可以在编译完成后加入自动化测试的批处理脚本。批处理脚本具体执行哪些内容呢?我们假设这样一个应用场景,软件是由很多算法组成的,也就是说对于测试人员来说算法测试是一个工作量比较大的任务。算法模块以一个个dll的形式存在,因此我们可以开发一个算法加载器(AlgoRun.exe),专门来加载这些算法dll。算法加载器是一个带参数的命令行程序,其带的唯一参数是一个xml文件,具体用法是:
AlgoRun.exe xml文件。
xml文件为一个算法参数配置文件,比如某个算法配置文件内容如下:
<?xml version="1.0" encoding="gb2312" standalone="no"?> <RunConfig> <!—统计算法配置 --> <AlgoDll value="Algo.dll" /> <!--运行的算法库 --> <ParaConfig> <parameter value="E:\TestData\1.txt"/> <!-- 输入文件 --> <parameter value="0.65" /> <!-- 相关系数阈值 --> <parameter value="15" /> <!—迭代次数--> <parameter value="500" /> <!-- 特征点数 --> </ParaConfig> </RunConfig>
然后自动化测试脚本可以写成这样:
AlgoRun.exe algo1.xml AlgoRun.exe algo2.xml AlgoRun.exe algo3.xml
这样可以在每日构建服务器上部署自动化测试的批处理脚本,每天晚上编译好最新的算法后运行算法自动化测试脚本,早上测试人员上班后就可以看到最新的测试输出了。如果要修改算法测试参数,只需要修改对应的xml文件即可。这样做的好处是充分利用服务器的计算资源和晚上的时间,测试人员只需要把精力放在分析处理结果的对错和精度方面。
相关文章推荐
- 一种结合hudson的算法自动化测试构想
- 设计模式C#实现(十六)——中介者模式
- Python的文本数据
- windows server 2008 R2搭建***
- BZOJ 1532: [POI2005]Kos-Dicing|网络流
- next_permutation函数介绍
- VirtualBox中不能正常使用OpneGL的问题
- 在VMware虚拟机中安装CentOS 7
- [Java视频笔记] 知识目录总览
- Centos6.7换源
- 常用MS SQL数据查询-2016
- Thinkpad X230如何进入BIOS界面
- 匆匆--朱自清
- Android listview优化
- Codeforces 596 C Wilbur and Points
- RecyclerView的基本用法二--滚动时RecyclerView之外的布局联动
- bzoj3993: [SDOI2015]星际战争
- iOS 开发学习之 User Interface(7)UINavigationController 与 UITabBarController
- 上架
- 显示器驱动程序 nvlddmkm 已停止响应