diff --git a/tests/scripts/generate_bignum_tests.py b/tests/scripts/generate_bignum_tests.py
index 7a8ebd1..3f556ce 100755
--- a/tests/scripts/generate_bignum_tests.py
+++ b/tests/scripts/generate_bignum_tests.py
@@ -48,7 +48,7 @@
 import itertools
 import sys
 
-from abc import abstractmethod
+from abc import ABCMeta, abstractmethod
 from typing import Callable, Dict, Iterator, List, Optional, Tuple, TypeVar
 
 import scripts_path # pylint: disable=unused-import
@@ -64,12 +64,12 @@
     return "\"{}\"".format(val)
 
 
-class BignumTarget(test_generation.BaseTarget):
+class BignumTarget(test_generation.BaseTarget, metaclass=ABCMeta):
     """Target for bignum (mpi) test case generation."""
     target_basename = 'test_suite_mpi.generated'
 
 
-class BignumOperation(BignumTarget):
+class BignumOperation(BignumTarget, metaclass=ABCMeta):
     """Common features for test cases covering binary bignum operations.
 
     This adds functionality common in binary operation tests. This includes
@@ -118,7 +118,7 @@
         return super().description()
 
     @abstractmethod
-    def result(self) -> Optional[str]:
+    def result(self) -> str:
         """Get the result of the operation.
 
         This may be calculated during initialization and stored as `_result`,
@@ -131,7 +131,7 @@
         """Generate a description of the argument val.
 
         This produces a simple description of the value, which are used in test
-        case naming, to avoid most generated cases only being numbered.
+        case naming, to add context to the test cases.
         """
         if val == "":
             return "0 (null)"
