mirror of https://github.com/apache/cloudstack.git
75 lines
3.1 KiB
Python
75 lines
3.1 KiB
Python
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
import deployDataCenter
|
|
import TestCaseExecuteEngine
|
|
from argparse import ArgumentParser
|
|
if __name__ == "__main__":
|
|
|
|
parser = ArgumentParser()
|
|
|
|
parser.add_argument("-d", "--directory", dest="testCaseFolder",
|
|
help="the test case directory")
|
|
parser.add_argument("-f", "--file", dest="module",
|
|
help="run tests in the given file")
|
|
parser.add_argument("-r", "--result", dest="result",
|
|
help="test result log file", default='/tmp/t.log')
|
|
parser.add_argument("-t", "--client", dest="testcaselog",
|
|
help="test case log file", default='/tmp/r.log')
|
|
parser.add_argument("-c", "--config", action="store",
|
|
default="./datacenterCfg", dest="config",
|
|
help="the path where the json config file generated,\
|
|
by default is ./datacenterCfg")
|
|
parser.add_argument("-l", "--load", dest="load", action="store_true",
|
|
help="only load config, do not deploy,\
|
|
it will only run testcase")
|
|
|
|
options = parser.parse_args()
|
|
|
|
testResultLogFile = None
|
|
if options.result is not None:
|
|
testResultLogFile = options.result
|
|
|
|
testCaseLogFile = None
|
|
if options.testcaselog is not None:
|
|
testCaseLogFile = options.testcaselog
|
|
deploy = deployDataCenter.deployDataCenters(options.config)
|
|
if options.load:
|
|
deploy.loadCfg()
|
|
else:
|
|
deploy.deploy()
|
|
|
|
if options.testCaseFolder is None:
|
|
if options.module is None:
|
|
parser.print_usage()
|
|
exit(1)
|
|
else:
|
|
engine = \
|
|
TestCaseExecuteEngine.TestCaseExecuteEngine(deploy.testClient,
|
|
deploy.getCfg(),
|
|
testCaseLogFile,
|
|
testResultLogFile)
|
|
engine.loadTestsFromFile(options.module)
|
|
engine.run()
|
|
else:
|
|
engine = TestCaseExecuteEngine.TestCaseExecuteEngine(deploy.testClient,
|
|
deploy.getCfg(),
|
|
testCaseLogFile,
|
|
testResultLogFile)
|
|
engine.loadTestsFromDir(options.testCaseFolder)
|
|
engine.run()
|