1. ホーム
  2. c#

SUTとは何か、その起源は?

2023-10-16 08:30:39

質問

多くの人がSUTという用語について話しているのを見かけますが、なぜその用語を使うのか理解できません。

SUTとは、あなたがテストしたいことですか?

この用語はどこから来て、どういう意味ですか?

例えばこのテストでは、私のSUTは何でしょうか?

[TestMethod]
public void UsersAction_should_return_IndexAction()
{
    const long id = 1;

    UsersViewModel viewModel = new UsersViewModel()
    {
        SelectedUsers = new long[] { 1, 2, 3, 4 }
    };

    ActionResult result = _controller.Users(id, viewModel);

    result.AssertActionRedirect().ToAction("Index");
}

どのように解決するのですか?

ユニットテストの観点からのSUT (System Under Test) は、モックやスタブではない、テスト内のすべてのアクター (すなわち1つ以上のクラス) を表します。 あなたの例では、それはコントローラでしょう。