0

Ceedling/Unity を使用するのは初めてです。モジュールにさまざまな入力テスト ポイントを与え、出力値をチェックすることでテストしています。しかし、私はこれを何度も行う必要があります。これは私が試したようなものです(「for」ループを使用):

/*Example Code*/
void test_whenInputIsThis_thenOutputIsThat(void)
{
    for(i=0;i<ITERATIONS;i++)
    {
    /*Everything is declared & initialized as required*/
    inputA = inputA_array[i];
    inputB = inputB_array[i];
    expected = expectedValues_array[i];
    ModuleUnderTest(inputA, inputB);
    TEST_ASSERT_FLOAT_WITHIN(delta, expected, actual);
    }
}

そして、テストに合格したことがわかりますが(期待値と実際の値はデルタ内にあります)、全体的なテストの概要にはこれが表示されます

--------------------
OVERALL TEST SUMMARY
--------------------
TESTED:  1
PASSED:  1
FAILED:  0
IGNORED: 0

これは、1 つのテスト関数 = 1 つのテストであることを示唆しています。興味深いことに、ループを介して、expected と actual のすべての値を出力できます (したがって、ループは完全に実行されます)。では、テストをループに入れる方法はありますか? それとも別の方法で繰り返しますか?それとも、単体テストのルールに違反していますか?

ありがとう。

4

1 に答える 1