Beispiel #1
0
    def setRunnerByArgs(self, isShowMsg, args):
        cArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
            list(args), [], None, *self.__getDefine())
        if isShowMsg:
            print(parseMsg)
        if not isSuccess:
            import sys
            sys.exit(-1)

        for f in cArgs.uisourcefile:
            self.ui.loadUI(f)

        for cls in DynamicLoader.getClassFromFile(None, True,
                                                  cArgs.uitoolClass):
            try:
                isSubcls = issubclass(cls, UIToolBase)
            except:
                isSubcls = False
            if isSubcls and not cls == UIToolBase:
                uitool = cls()
                self.ui.setUI(uitool, cArgs.strategy)
                break

        self.maxCases = cArgs.maxCases
        self.maxStep = cArgs.maxStep
        self.isdebug = cArgs.runMode == "debug"
Beispiel #2
0
    def setDriverByArgs(self, args):
        from libs.objop import ArgsOperation

        cArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
            list(args), [], None, *self.__getDefine())
        from libs.syslog import slog
        slog.info(parseMsg)
        if not isSuccess:
            import sys
            sys.exit(-1)

        import os
        if cArgs.config != None and os.path.exists(cArgs.config):
            self.cprop.load(cArgs.config)

        self.regServer = cArgs.regServer
        self.regName = cArgs.regName
        self.ports = [8089] if len(cArgs.ports) == 0 else cArgs.ports
        self.initMethods = cArgs.initMethods
        host, port = "", int(self.ports[0])
        self._serverArgs = (host, port, cArgs.timeout, cArgs.isCpuPriority,
                            cArgs.webroot, cArgs.mainpage, cArgs.uploadFolder,
                            cArgs.servicePath, self.cserviceInfo,
                            self.cserviceProxy, cArgs.stubFiles,
                            cArgs.processes, cArgs.setProcessLog,
                            cArgs.debugMode)
        del cArgs
Beispiel #3
0
 def __init__(self, driver, args):
     self.driver = driver
     mtArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
         args, [], None, *self.__getDefine())
     tlog.infoText(parseMsg)
     if not isSuccess:
         sys.exit(-1)
     self.__defineArgs(mtArgs)
Beispiel #4
0
 def __init__(self, driver, args=None, mtArgs=None):
     self.driver = driver
     if args is not None:
         mtArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
             args, [], toJsonObj, *self.__getDefine())
         slog.info(parseMsg)
         if not isSuccess:
             sys.exit(-1)
     self.__defineArgs(mtArgs)
Beispiel #5
0
    def setRunnerByArgs(self, isShowMsg, args):
        cArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
            list(args), [], None, *self.__getDefine())
        if isShowMsg:
            print(parseMsg)
        if not isSuccess:
            import sys
            sys.exit(-1)

        self.runMode = cArgs.runMode
        self.inPattern = cArgs.inPattern
        self.apiIntervalTps = cArgs.apiIntervalTps
        self.sreport.setReporter(cArgs.maxTime, cArgs.isKeepRunning)
        if cArgs.url != "":
            self.__checkCurl(cArgs)
Beispiel #6
0
    def __defineInput(self, actFun, tupleArg, jsonArg, adpInfo):
        actName = ObjOperation.tryGetVal(adpInfo, actFun.__name__,
                                         actFun.__name__)
        argspec = getargspec(actFun)
        argNames = argspec.args
        argDefaults = argspec.defaults
        if tupleArg is None:
            cpInput = None
        else:
            cpInput = []
            actInput = ArgsOperation.getTupleArgs(jsonArg, argNames, tupleArg,
                                                  argDefaults)

            for inputArg in actInput:
                try:
                    cpInput.append(copy.deepcopy(inputArg))
                except:
                    cpInput.append(inputArg)
            cpInput = tuple(cpInput)
        return actName, argNames, cpInput
Beispiel #7
0
    def setRunnerByArgs(self, isShowMsg, args):
        cArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(
            list(args), [], None, *self.__getDefine())
        if isShowMsg:
            print(parseMsg)
        if not isSuccess:
            import sys
            sys.exit(-1)
        tprop.load(cArgs.config)

        self.runMode = cArgs.runMode
        self.inPattern = cArgs.inPattern
        self.apiIntervalTps = cArgs.apiIntervalTps
        self.perfArgs = (cArgs.startThreads, cArgs.maxThreads, cArgs.step,
                         cArgs.expTps) if cArgs.isResetPerf else None
        self.sreport.setReporter(cArgs.maxTime, cArgs.isKeepRunning)
        if cArgs.url != "":
            self.__checkCurl(cArgs)

        DynamicLoader.getClassFromFile("stressScenario", False,
                                       *cArgs.stubFiles)
Beispiel #8
0
    def setRunnerByArgs(self, isShowMsg, args):
        cArgs, parseMsg, isSuccess = ArgsOperation.parseArgs(list(args), [], toJsonObj, *self.__getDefine())
        if isShowMsg:
            print(parseMsg)
        if not isSuccess:
            sys.exit(-1)
        self.pprop.load(cArgs.config)

        propConf = cArgs.prop
        for sec in propConf:
            if not self.pprop.sections.__contains__(sec): self.pprop.sections[sec] = propConf[sec]
            else:
                for p in propConf[sec]: self.pprop.sections[sec][p] = propConf[sec][p]

        self.mode = cArgs.mode
        self.inPattern = cArgs.__dict__['in']
        self.apiIntervalTps = cArgs.apiIntervalTps
        self.perfArgs = (cArgs.startThreads, cArgs.maxThreads, cArgs.step, cArgs.expTps) if cArgs.isResetPerf else None
        self.sreport.setReporter(cArgs.maxTime, cArgs.isKeepRunning)
        if cArgs.url != "":
            self.__checkCurl(cArgs)
        from libs.refrect import DynamicLoader
        DynamicLoader.getClassFromFile("stressScenario", self.ignoreImportExcept, True, *cArgs.file)