20 Jun 2024.

Tags: Announcements Test Development

Stb-tester’s Object Repository is a tool for faster development & debugging of your “Page Object” Python code. Today we have released significant performance & usability improvements to make this tool better suited for very large code-bases.

Background

The Object Repository works by checking your Python code against canned screenshots of the device-under-test, instead of a live video feed. This provides a much faster turn-around time for your developers’ edit-test-debug cycle when writing or modifying your “Page Object” Python code. But if you had many of these canned screenshots (Stb-tester calls them “selftest screenshots”) the cycle was still too slow.

The Object Repository checks your Page Object code against each screenshot by running the code on an Stb-tester Node. This ensures that the behaviour is the same as when you run the full test scripts, and it simplifies deployment of the Object Repository tool (the code runs in the same Python environment, with the same Python libraries available, and the same network environment, as your real test scripts).

The performance improvements

Our new performance improvements come from the following changes:

  1. The Object Repository only checks the screenshots that you select, on demand. (Previously, it would check your selected Page Object against all the selftest screenshots in your test-pack, and then show you the data for the selected ones.)

  2. By default, the Object Repository selects the screenshots in selftest/screenshots/{appname}/{pagename}/**.png.
    To check other screenshots, click the “Select Screenshots” button.

  3. The work of checking each screenshot is farmed out to all idle Stb-tester Nodes, in parallel. (Previously, all screenshots were processed on a single Node.)