1. from django.test.runner import DiscoverRunner
    
  2. 
    
  3. 
    
  4. class CustomOptionsTestRunner(DiscoverRunner):
    
  5.     def __init__(
    
  6.         self,
    
  7.         verbosity=1,
    
  8.         interactive=True,
    
  9.         failfast=True,
    
  10.         option_a=None,
    
  11.         option_b=None,
    
  12.         option_c=None,
    
  13.         **kwargs,
    
  14.     ):
    
  15.         super().__init__(
    
  16.             verbosity=verbosity, interactive=interactive, failfast=failfast
    
  17.         )
    
  18.         self.option_a = option_a
    
  19.         self.option_b = option_b
    
  20.         self.option_c = option_c
    
  21. 
    
  22.     @classmethod
    
  23.     def add_arguments(cls, parser):
    
  24.         parser.add_argument("--option_a", "-a", default="1"),
    
  25.         parser.add_argument("--option_b", "-b", default="2"),
    
  26.         parser.add_argument("--option_c", "-c", default="3"),
    
  27. 
    
  28.     def run_tests(self, test_labels, **kwargs):
    
  29.         print("%s:%s:%s" % (self.option_a, self.option_b, self.option_c))