博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
test-definitions/blob/master/auto-test/dsdbench/dsdbench.sh
阅读量:4214 次
发布时间:2019-05-26

本文共 2143 字,大约阅读时间需要 7 分钟。

#!/bin/sh -e# This test script run docker storage driver benchmarks and tests.# Test suite source https://github.com/dmcgowan/dsdbench# shellcheck disable=SC1091#cd到相对路径下执行脚本. ../../lib/sh-test-lib#变量赋初值OUTPUT="$(pwd)/output"TEST_SUITE="BENCHMARKS"RESULT_FILE="${OUTPUT}/result.txt"LOG_FILE="${OUTPUT}/dsbench.txt"#定义函数说明这个脚本的用法usage() {    echo "Usage: $0 [-t 
] [-s
]" 1>&2 exit 1}#parse 可选参数while getopts "t:s:h" o; do case "$o" in t) TEST_SUITE="${OPTARG}" ;; s) SKIP_INSTALL="${OPTARG}" && export SKIP_INSTALL ;; h|*) usage ;; esacdone#执行函数得到发型板的名字dist_name# shellcheck disable=SC2154case "${dist}" in debian|ubuntu) dist_info #根据发行版的名字安装不同的包 # shellcheck disable=SC2154 if [ "${Codename}" = "jessie" ]; then install_deps "git libdevmapper-dev" install_deps "-t jessie-backports golang" else install_deps "git golang libdevmapper-dev" fi ;; fedora|centos) install_deps "git golang device-mapper-devel" ;; opensuse) install_deps "git go device-mapper-devel" ;;esac#检查是否是root,不是root用户的话,则输出错误日志! check_root && error_msg "You need to be root to run this script."create_out_dir "${OUTPUT}"mkdir -p "${OUTPUT}/golang"cd "${OUTPUT}"export GOPATH="${OUTPUT}/golang"#clone 源码git clone https://github.com/dmcgowan/dsdbenchcd dsdbench#cp 目录cp -r vendor/ "${GOPATH}/src"#如果是测试benchmarkif [ "${TEST_SUITE}" = "BENCHMARKS" ]; then # Run benchmarks. #执行命令测试benchmark,并将log输出到文件中,parse文件中的log来得到测试benchmark的值 DOCKER_GRAPHDRIVER=overlay2 go test -run=NONE -v -bench . \ | tee "${LOG_FILE}" # Parse log file. egrep "^Benchmark.*op$" "${LOG_FILE}" \ | awk '{printf("%s pass %s %s\n", $1,$3,$4)}' \ | tee -a "${RESULT_FILE}"elif [ "${TEST_SUITE}" = "TESTS" ]; then # Run tests. #测试 DOCKER_GRAPHDRIVER=overlay2 go test -v . \ | tee "${LOG_FILE}" # Parse log file. for result in PASS FAIL SKIP; do grep "\-\-\- ${result}" "${LOG_FILE}" \ | awk -v result="${result}" '{printf("%s %s\n", $3,result)}' \ | tee -a "${RESULT_FILE}" donefi

转载地址:http://aznmi.baihongyu.com/

你可能感兴趣的文章
LeetCode——DFS
查看>>
MapReduce Task数目划分
查看>>
ZooKeeper分布式锁
查看>>
3126 Prime Path
查看>>
app自动化测试---ADBInterface驱动安装失败问题:
查看>>
RobotFramework+Eclipse安装步骤
查看>>
测试的分类
查看>>
photoshop cc2019快捷键
查看>>
pycharm2019版本去掉下划线的方法
查看>>
九度OJ 1091:棋盘游戏 (DP、BFS、DFS、剪枝)
查看>>
leetcode 13: Roman to Integer
查看>>
a标签中调用js方法
查看>>
js函数中传入的event参数
查看>>
[hive]优化策略
查看>>
c++14现代内存管理
查看>>
右值引用,move语义和完美转发
查看>>
c++使用宏检测类是否包含某个函数或者变量属性
查看>>
CSS之Multi-columns的column-gap和column-rule
查看>>
CSS之Multi-columns的跨列
查看>>
CSS之浮动(一)
查看>>