def reset(self): if grinder: self.dictRuntime = dict(properties) self.dictRuntime.update({ 'grinder.agentNumber': grinder.getAgentNumber(), 'grinder.runNumber': grinder.getRunNumber(), 'grinder.threadNumber': grinder.getThreadNumber(), 'grinder.processNumber': grinder.getProcessNumber() - grinder.getFirstProcessNumber(), 'AGENT': grinder.getAgentNumber(), 'RUN': grinder.getRunNumber(), 'THREAD': grinder.getThreadNumber(), 'PROCESS': grinder.getProcessNumber() - grinder.getFirstProcessNumber(), 'grinder.runNumber.padded': self.getPaddedRunNumber(), 'grinder.threadNumber.padded': self.getPaddedThreadNumber(), 'grinder.processNumber.padded': self.getPaddedProcessNumber(), 'grinder.agentNumber.padded': self.getPaddedAgentNumber() }) self.dictRuntime.update(self.dictDynamicContext) self.dictDynamicContext = {}
def __call__(self): #print str(grinder.getAgentNumber()) + ':' + str(grinder.getThreadNumber()) + ':' + str(grinder.getRunNumber()) self.username = '******' + str("%03d" % grinder.getThreadNumber()) + "%01d" % grinder.getRunNumber() + '@163.com' #print str(grinder.getThreadNumber()) self.password = '******' self.addressId = '5120000' + str("%03d" % grinder.getThreadNumber()) + "%01d" % grinder.getRunNumber() self.page() # GET / (requests 101-102) self.page2() self.page3() self.page4()
def getId(self): agent = grinder.getAgentNumber() process = grinder.getProcessNumber() thread = grinder.getThreadNumber() debug("I'm A:%s,P:%s,T:%s" % (agent,process,thread)) if (agent == -1): return process + thread return agent + process + thread
def initialiseKeys(self): log("Initialise test keys") for i in range(0, numberOfKeys): key = "%i-%i" % (i, grinder.getThreadNumber()) pooledKeys.add(key) value = self.createValue(sizeOfValue) self.doPut(key, value) log("Initialisation finished")
def __init__(self): agent_number = grinder.getAgentNumber() thread_number = grinder.getThreadNumber() self.generator = thread_manager.setup_thread( thread_number, agent_number, throttling_groups, user) worker_type = type(self.generator) grinder.logger.debug('Worker %s-%s type %s' % (agent_number, thread_number, worker_type))
def __call__(self): """This method is called for every run performed by the worker thread.""" if grinder.runNumber == 0: self.initialSleep() idx = (processNum * threadNum * grinder.getRunNumber() + \ threadNum * grinder.getProcessNumber() + \ grinder.getThreadNumber()) % len(keyword_list) keyword = keyword_list[idx] param = self.getParam(keyword) self.request1(param)
def warmup(self): writes = 0 reads = 0 log("Start warming up") while (writes < warmUpOpCount and reads < warmUpOpCount): isGet = random.nextInt(2) == 1 if isGet: reads = reads + 1 operationId = reads if operationId < warmUpOpCount: key = "Warmup-%i-%i" % (operationId, grinder.getThreadNumber()) self.doGet(key) else: writes = writes + 1 operationId = writes if operationId < warmUpOpCount: key = "Warmup-%i-%i" % (operationId, grinder.getThreadNumber()) value = self.createValue(warmUpSizeValue) self.doPut(key, value) log("Warm up finished")
def __init__(self): self.thread = grinder.getThreadNumber() # Select random dataset #!TODO: select dataset by Thread number? self.dataset_url = random.choice(dataset_list) self.ds = Dataset(self.dataset_url) self.variable = self.ds.variables[variable] self.requests = generate_subset_requests(self.variable, partition_dict) grinder.logger.output('Thread %d selecting %s' % (self.thread, self.dataset_url)) grinder.logger.output('Thread %d has partitions %s' % (self.thread, partition_dict)) grinder.logger.output('Thread %d has variable of shape %s' % (self.thread, self.variable.shape))
def __call__(self): """Execute all requests according to the class attribute ``sequence``, waiting ``think_time`` between requests, and ``scenario_think_time`` between scenarios. """ # Determine which sequencing to use sequence = WebtestRunner.sequence # Run a single TestSet at random. if sequence == 'random': test_set = random.choice(WebtestRunner.test_sets) self.run_test_set(test_set) # Run a single TestSet based on the current thread number elif sequence == 'thread': index = grinder.getThreadNumber() % len(WebtestRunner.test_sets) test_set = WebtestRunner.test_sets[index] self.run_test_set(test_set) # Run a TestSet based on a percentage-based weight elif sequence == 'weighted': # Get a random number between 0.0 and 1.0 pick = random.random() # Figure out which TestSet to run, by determining an interval # for each one; whichever interval pick falls into is the test # that will be run (assumes all TestSet weights are normalized) left, right = 0.0, 0.0 for test_set in WebtestRunner.test_sets: left = right right = left + test_set.weight if left <= pick and pick <= right: break # Run the TestSet that was selected self.run_test_set(test_set) # Run all TestSets sequentially else: # assume 'sequential' for test_set in WebtestRunner.test_sets: self.run_test_set(test_set) return True
def __init__(self): self.thread = thread_manager.setup_thread(grinder.getThreadNumber())
def __init__(self): self.threadId = grinder.getThreadNumber() print "current thread id: %d" % (self.threadId)
def hello_world(): thread = grinder.getThreadNumber() print '> worker thread %d: hello world!' % thread