Hi!
We notice that you use the loop structure in your test cases.
For example, testQualityScoresIntArray() in FastqToolsTest.java

However, using the loop in test cases is not a good test practice.
We analyzed the relevant Stack Overflow posts and summarized four potential negatives it brings:
- Loops make the test case more complex
- In most cases, a loop can be replaced with a data-driven test that is more readable.
- Loops break the assert-for-one-thing thumb rule. I don't mean a single assert statement.
- When a test fails, knowing the reason is more complicated.
Solution:
To avoid using the loop in the test, JUnit provides an annotation (i.e., @ParameteredTest), enabling a test case to run multiple times with different parameters.
We provide a usage example here:
