paqr-framework-docs

Write PAQR Python test cases that generate XML for CANoe instrument cluster testing.

Updated Sep 7, 2026
One-click install
npx skills add https://github.com/deriye/.agents-work --skill paqr-framework-docs-deriye
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: paqr-framework-docs
Source: https://github.com/deriye/.agents-work/tree/main/skills/paqr-framework-docs
Command: npx skills add https://github.com/deriye/.agents-work --skill paqr-framework-docs-deriye

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and assets (resource) components.

What problem does it solve? Writing PAQR test cases for automotive instrument cluster verification requires knowing the exact TestCase API, signal naming formats, metadata schema, and base class selection rules. This Skill provides complete documentation and templates so generated tests are valid and executable in the CANoe environment. ## Core Features & Use Cases - Complete API Reference: Documents all TestCase, GWTest, and DTCTest methods including CAN/LIN/PS signal handling, DTC operations, navigation, and verification helpers. - Real-World Test Patterns: Provides proven patterns for gateway routing tests, DTC groups, nested signal loops, LIN bus tests, timing-sensitive blink verification, and multi-parameter configurations. - Ready-to-Use Template: Ships a test template with the required metadata dict, IntEnum usage guidance, and standalone XML generation block. - Use Case: Given a requirement to verify that a CAN engine speed signal appears on the cluster display, generate a GWTest subclass that sets J1939 signals, checks PS signals, and produces XML runnable in CANoe. ## Quick Start Write a PAQR gateway test that sets the CAN signal J1939_1::EMS::EEC1::EngineSpeed through several RPM values and verifies PS_EngineSpeed matches each value.

Frequently Asked Questions about paqr-framework-docs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a PAQR gateway test for CAN to PS signal routing?▼

Subclass GWTest, name the class Test, fill in the metadata dict, and implement run() using set_can_signal followed by check_PS_signal. Signal names use double-colon format like J1939_1::EMS::EEC1::EngineSpeed, and PS signals use plain names like PS_EngineSpeed.

Which PAQR base class should I use for my test?▼

Use GWTest for gateway and signal routing tests such as CAN-to-PS or LIN-to-PS translation, which covers most cases. Use DTCTest for diagnostic trouble code testing and TestCase for custom test types not covered by the other two.

Why does my PAQR test fail with TypeError expected int or str got Enum?▼

This error occurs when passing a plain Enum member to signal methods. Use IntEnum from the enum standard library instead, since IntEnum members are ints and work directly with set_can_signal and check_PS_signal without calling .value.

How do I test DTCs with the PAQR framework?▼

Subclass DTCTest and call dtc_test with the DTC codes, NPP popup ID, and FMI list for DM1 faults. The helper handles the full set, verify active, clear, verify cleared cycle; omit FMI for DiagFaultstat DTCs.

How do I run PAQR tests and generate the XML output?▼

Run the test file directly with Python to generate XML into a test_xml directory, or use the paqr generate CLI with test-procedures-path and output-file arguments. The CLI also supports metadata filtering such as is_stable=True or tag-based selection.

What are the limitations of the PAQR framework?▼

The framework has limited type hints with runtime validation, hardcoded menu path and DID mappings, and PS signals validated against APX files only at runtime. Signal values should use IntEnum rather than magic numbers or plain Enum types.