Testcase Adjustment
Typically, software testcases address the functionality of the software itself. However, there may be a number of architecture-related scenarios for software functionality, including but not limited to:
- Some features are only available on specific target platforms, such as Acceleration Based on AVX Instruction Set, etc.
- Some features are considered to take less than an expected amount of time to execute on legacy architectures, but are limited in speed and take more time than expected on RISC-V architectures.
- Some functionality relies on third-party libraries that do not yet support certain architectures, making the functionality unusable.
In this case, even if the software itself can be compiled under RISC-V architecture, the build may fail due to the failure of some test cases. In this case, the test cases need to be carefully adjusted to eliminate the impact of different target architectures, while keeping the original error detection capability of the test cases intact.
The common testcase adjusting methods currently available are listed below.
- Modify Testcase Assertion: Modify architecture-related test case judgment conditions (such as architecture-related content in the output text, time limit of testcase, etc.).
- Skip Testcase (not recommended): Skip some test cases under the specified target architecture (need to fully evaluate the reason).
Modify Testcase Assertion
TODO
Architecture-related Content in Output Text
TODO
Time Limit of Testcase
TODO
Skip Testcase
TODO
Platform-specific Features
TODO
Lack of Third-party Library Dependency
TODO