Python locust.task() Examples
The following are 7
code examples of locust.task().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
locust
, or try the search function
.
Example #1
Source File: locustfile.py From ngsi-timeseries-api with MIT License | 5 votes |
def on_start(self): """ on_start is called when a Locust start before any task is scheduled """ self.trafic_flow_observers = 0 self.insert_traffic_flow_observed() self.air_quality_observers = 0 self.insert_air_quality_observed()
Example #2
Source File: test_case.py From karlooper with MIT License | 5 votes |
def index(self): self.client.get("/hello-world") # @task(1) # def about(self): # self.client.get("/hello")
Example #3
Source File: baskets.py From edx-load-tests with Apache License 2.0 | 5 votes |
def purchase_single_free_product(self): """Simulate the purchase of a single free product via the LMS.""" # If a user tries to purchase the same product more than once, we'll get 409s from # the LMS. To avoid this situation, we create a new user each time this task is called. self.auto_auth() post_data = { 'course_id': settings.data['ecommerce']['free_course_id'], } self.post('/api/commerce/v0/baskets/', data=json.dumps(post_data))
Example #4
Source File: ecommerce_user_tasks.py From edx-load-tests with Apache License 2.0 | 5 votes |
def get_ecom_worker_client(): """ Gets the ecommerce worker client Using the oauth credentials in the settings file, this method returns up the ecommerce work clients which enables a task to call the api on behalf of the ecommerce worker. Returns: LocustEdxRestApiClient: The ecommerce worker client """ access_token_endpoint = '{}/oauth2/access_token'.format( settings.secrets['oauth']['provider_url'].strip('/') ) access_token, __ = LocustEdxRestApiClient.get_oauth_access_token( access_token_endpoint, settings.secrets['oauth']['client_id'], settings.secrets['oauth']['client_secret'], ) return LocustEdxRestApiClient( ECOMMERCE_HOST, session=HttpSession(base_url=ECOMMERCE_HOST), oauth_access_token=access_token )
Example #5
Source File: locustfile.py From edx-load-tests with Apache License 2.0 | 5 votes |
def patch_credential(self): """ Randomly picked the status for patching the credentials. In case of revoke status remove the record from the deque. Otherwise during rendering task it will return 404. """ if not self._user_credentials: return credential_uuid = random.choice(self._user_credentials) status = random.choice(['awarded', 'revoked']) data = {'status': status} if status == 'revoked': self._user_credentials.remove(credential_uuid) self.user_credential_client.credentials(credential_uuid).patch(data=data, name='/api/v2/credentials/[uuid]')
Example #6
Source File: locustfile.py From HandsOnDeepLearningWithPytorch with MIT License | 5 votes |
def on_start(self): """ on_start is called when a Locust start before any task is scheduled """ self.url = "/predictions/fizbuz_package" self.headers = {"Content-Type": "application/json"}
Example #7
Source File: test_locust.py From transformer with MIT License | 4 votes |
def test_it_renders_a_locustfile_template(self): a_name = "some_task" a_request = MagicMock(spec=Request) a_request.method = HttpMethod.GET a_request.url = MagicMock(spec=SplitResult) a_request.url.scheme = "some_scheme" a_request.url.hostname = "some_hostname" a_request.url.path = "some_path" a_request.url.geturl() a_request.url.geturl.return_value = "some_url" a_request.headers = {"a": "b"} a_request.name = None task = Task(a_name, a_request) scenario = Scenario(name="SomeScenario", children=[task], origin=None) scenario_group = Scenario( name="ScenarioGroup", children=[scenario], weight=2, origin=None ) script = locustfile([scenario_group]) expected = string.Template( f""" # File automatically generated by Transformer v{__version__}: # https://github.com/zalando-incubator/Transformer import re from distutils.version import LooseVersion from locust import __version__ LOCUST_MAJOR_VERSION = LooseVersion(__version__).version[0] if LOCUST_MAJOR_VERSION >= 1: from locust import HttpUser from locust import SequentialTaskSet from locust import TaskSet from locust import task HttpLocust = HttpUser TaskSequence = SequentialTaskSet def seq_task(_): return task else: from locust import HttpLocust from locust import TaskSequence from locust import TaskSet from locust import seq_task from locust import task class ScenarioGroup(TaskSet): @task(1) class SomeScenario(TaskSequence): @seq_task(1) def some_task(self): response = self.client.get(url='some_url', name='some_url', timeout=$TIMEOUT, allow_redirects=False, headers={{'a': 'b'}}) class LocustForScenarioGroup(HttpLocust): if LOCUST_MAJOR_VERSION >= 1: tasks = [ScenarioGroup] else: task_set = ScenarioGroup weight = 2 min_wait = 0 max_wait = 10 """ ).safe_substitute({"TIMEOUT": TIMEOUT}) assert expected.strip() == script.strip()