Automated Manufacturing Testing Platform
We're building a cutting-edge platform for automated manufacturing test execution and management, designed for contract manufacturers and OEMs.

We're building a cutting-edge platform for automated manufacturing test execution and management, designed for contract manufacturers and OEMs.
A comprehensive suite of tools for managing manufacturing tests from development to deployment
No-code tools to build a interface for your tests
Run Onnyx test station software on any computer (Linux or Windows) and interact with any external hardware
Gain deep insights into your manufacturing processes with predictive analytics
Built-in viewers for all your test data - CSV exports, images, logs, and more, without external tools
Powerful graphing utilities for real-time data visualization, trend analysis, and statistical process control
Extensive SDKs and APIs for custom test development, making Onnyx infinitely extensible for both enterprises and startups
Powerful compound queries to filter and analyze test results across multiple parameters and time ranges
Deploy your tests to Onnyx via CI/CD pipelines or locally. Our version management system handles automated rollouts to test stations.
Version Management & Deployment Tools
Onnyx works locally in development mode or in production with full cloud integration
Loading terminal...
Onnyx can be run directly from the CLI in offline mode for development purposes. This allows engineers to author and test configurations locally before deploying to cloud-connected test stations in production environments.
Create maintainable, reusable test functions using our Python SDK
A basic test flow orchestrates the test execution and handles results:
import onnyx
from tests.example_tests import *
def example_flow(test_document, settings):
try:
cellSettings = test_document["_cell_settings_obj"]
cellConfig = test_document["_cell_config_obj"]
with onnyx.test_context(
onnyx.TestContext.initialize(
settings, test_document, FailureCodes.get_descriptions()
)
) as test_context:
test_context.logger.info("Starting example tests")
failure_code = FailureCodes.NO_FAILURE
# Run tests sequentially, checking for failures
if failure_code == FailureCodes.NO_FAILURE:
rc = check_internet_connection(
"Network",
"Check internet connection",
cellConfig.get("ping_url", "https://www.google.com"),
cellConfig.get("num_pings", 5),
)
if rc.failure_code != FailureCodes.NO_FAILURE:
failure_code = rc.failure_code
else:
test_context.record_values(rc.return_value)
test_context.wrap_up(failure_code)
except Exception as e:
print(f"Error in example_flow: {e}")
raise
Contact us to learn more about Onnyx or to request a demo