SimpleTest module needs to load each individual .test file in order to get information about the test. In Drupal each test includes a static getInfo() method to give the test a name, description, and group.

This means however that in Drupal PHP must actually parse the entire .test file to call the getInfo() methods, and that every .test file in the entire system must be parsed in order to display a list of tests. In Drupal 8 for instance, displaying the list of tests requires over 150MB of memory!

To solve this problem, information about tests have been moved to a separate [modulename].tests.info file which allows Backdrop to get a list of tests extremely quickly, with a very small memory footprint (exactly the same thing we do for modules).

In addition, the existing .info syntax (for module.tests.info files, not for module.info files) was amended to support INI-style "sections".

Implementation:
Drupal 7 (in book.test file):

class BookTestCase extends DrupalWebTestCase {
  // ...
  public static function getInfo() {
    return array(
      'name' => 'Book functionality',
      'description' => 'Create a book, add pages, and test book interface.',
      'group' => 'Book',
    );
  }
  // ...
}

Backdrop (in book.tests.info):

[BookTestCase]
name = Book functionality
description = Create a book, add pages, and test book interface.
group = Book
file = book.test

[AnotherTest]
name = Other functionality
description = Other description
group = Book
file = book.test

[YetAnotherTest]
name = Yet more functionality
description = Yet another description
group = Book
file = tests/yet_another.test
Introduced in branch: 
1.0.x
Introduced in version: 
1.0.0
Impacts: 
Module developers