Unittest, Python’s built-in testing framework, does not natively support parallel test execution. To achieve parallel test execution with unittest, you can use third-party libraries like unittest-parallel
. Below is an example of how you can use unittest-parallel
to enable parallel execution of test cases with unittest.
# pip install unittest-parallel | |
# tests/test_parallel_execution.py | |
# In this code, we have a unittest test case class TestParallelExecution with three test methods representing tasks that can run concurrently. | |
import time | |
import unittest | |
class TestParallelExecution(unittest.TestCase): | |
def test_task_1(self): | |
"""Simulate task 1 that takes some time to complete.""" | |
time.sleep(1) # Simulate a task that takes 1 second | |
self.assertTrue(True, "Task 1 completed successfully.") | |
def test_task_2(self): | |
"""Simulate task 2 that takes some time to complete.""" | |
time.sleep(1) # Simulate a task that takes 1 second | |
self.assertTrue(True, "Task 2 completed successfully.") | |
def test_task_3(self): | |
"""Simulate task 3 that takes some time to complete.""" | |
time.sleep(1) # Simulate a task that takes 1 second | |
self.assertTrue(True, "Task 3 completed successfully.") | |
# To run the tests in parallel using unittest-parallel, you can specify the number of worker processes to use with the -w option. For example, to run tests with 2 worker processes in parallel, you can run: | |
# unittest-parallel discover -s tests -p 'test_parallel_execution.py' -w 2 |
I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I am working at Cotocus. I blog tech insights at DevOps School, travel stories at Holiday Landmark, stock market tips at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at I reviewed , and SEO strategies at Wizbrand.
Please find my social handles as below;
Rajesh Kumar Personal Website
Rajesh Kumar at YOUTUBE
Rajesh Kumar at INSTAGRAM
Rajesh Kumar at X
Rajesh Kumar at FACEBOOK
Rajesh Kumar at LINKEDIN
Rajesh Kumar at PINTEREST
Rajesh Kumar at QUORA
Rajesh Kumar at WIZBRAND