When you use the conviersion toolchain to run host tests, if you set remove_infinity_loop = 1 in the toolchain.ini file to remove the infinite loop and run the integration test, the coverage of the first test case is displayed normally, but the coverage starting from second test case is displayed abnormally.

This feature is provided by Controller Tester so that an infinite loop of the form while(1) can be repeated as many as the number of test cases in an integration test.

When users want to eliminate infinite loops in integration tests, they should use the fault injection feature.

  1. Set remove_infinity_loop = 0 in the toolchain.ini file.
  1. Break out of the loop by injecting a fault inside the loop.
    • When a conditional statement that can break out of the infinite loop is inside the loop
      • Inject the fault appropriately so that can break out of the infinite loop through that condition statement.
    • When a conditional statement that can break out of the infinite loop isn’t inside the loop.
      • Inject the fault at the end of the loop so that break out of the infinite loop.

Need more help with this?
Don’t hesitate to contact us here.

Thanks for your feedback.