Skip to content

Test Plan for the Python XNET API #88

@lilesj

Description

@lilesj

This is a test plan in the form of a tracking issue to outline and identify requirements for individual tests.

  • Test Matrix - Create a test matrix to identify testing gaps.
  • Loop-back Testing - Verifies general functionality of the API and quickly tests the most commonly used portions. Each test in this section should create both an input and output session of the designated type, transmit known data, and verify receipt of said data. Each test should include different properties to maximize the coverage of items in the test matrix.
    • Signal Single Point (0.1)
    • Signal Waveform (0.4)
    • Signal XY (0.4)
    • Frame Single Point (0.1)
    • Frame Queued (0.1)
    • Frame Stream (0.1)
    • Conversion - Frame -> Signal -> Modify -> Frame -> Verify Modification
  • Use Case Testing - Verifies functionality in real world use cases that may involve multiple session types, multiple interfaces/devices, synchronization etc.
    • Synchronize Three Interfaces with RTSI (0.4) - Synchronize the start of three interfaces on two devices via RTSI. Transmit a frame from one interface and verify the timestamp accuracy upon receipt by two other interfaces.
    • Maximum Frame Count Loop-back (0.4) - Create, use, and verify the maximum number of frame objects per interface (500).
    • Data Integrity (0.4) - Use stream sessions to transmit a ramp function or something similar and use waveform, XY, and queued sessions to verify no data has been lost upon receipt.
    • CAN FD with Custom Baud Rate (0.4) - Loop-back test that utilizes a custom CAN FD + BRS baud rate.
  • Object Testing - Verify the functionality of individual API objects not covered in other tests.
    • Session and friends object
      • container functions
      • start, stop, flush, wait
      • connect, disconnect, etc
    • System and friends object
    • Database and friends object
  • Property Testing - Verify all XNET properties can be get/set through the API.
    • Session and friends properties
      • Session
      • Interface
      • J1939
      • Frame
    • System and friends properties
    • Database and friends properties

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions