Skip to main content
QUICK REVIEW

[論文レビュー] A survey on test practitioners' awareness of test smells

Nildo Silva, Larissa Rocha|arXiv (Cornell University)|Mar 12, 2020
Software Engineering Research参考文献 18被引用数 14
ひとこと要約

本研究は、ブラジルの企業に勤める60名のテスト実務者を対象にしたアンケートを通じて、テスト実務者が意図せずテストスミスを導入する様子を調査した。熟練した開発者は、標準化された実践を遵守しても、依然としてアンチパターンを頻繁に使用し、テストスミスを生じさせていることが明らかになった。また、職業的経験がスミス導入を顕著に減少させないことも示された。

ABSTRACT

Developing test code may be a time-consuming task that usually requires much effort and cost, especially when it is done manually. Besides, during this process, developers and testers are likely to adopt bad design choices, which may lead to the introduction of the so-called test smells in test code. Test smells are bad solutions to either implement or design test code. As the test code with test smells increases in size, these tests might become more complex, and as a consequence, much harder to understand and evolve correctly. Therefore, test smells may have a negative impact on the quality and maintenance of test code and may also harm the whole software testing activities. In this context, this study aims to understand whether test professionals non-intentionally insert test smells. We carried out an expert survey to analyze the usage frequency of a set of test smells. Sixty professionals from different companies participated in the survey. We selected 14 widely studied smells from the literature, which are also implemented in existing test smell detection tools. The yielded results indicate that experienced professionals introduce test smells during their daily programming tasks, even when they are using standardized practices from their companies, and not only for their personal assumptions. Another relevant evidence was that developers' professional experience can not be considered as a root-cause for the insertion of test smells in test code.

研究の動機と目的

  • テスト実務者がテスト開発の過程で意図せずテストスミスを導入するかどうかを理解すること。
  • 職業的経験がテストスミス導入の可能性を低減するかどうかを検討すること。
  • 現実のテストワークフローにおいて、テストスミスの挿入を引き起こす一般的な開発実践を同定すること。
  • 業界の専門家間で、特定のテストスミス関連実践の頻度と普及度を評価すること。
  • 個人の専門性を超えたテストスミス導入の根本的要因を特定することで、テスト品質の向上を支援すること。

提案手法

  • ブラジルの多様な企業に所属する60名のテスト実務者を対象に、専門家アンケートを実施した。
  • 文献で広く研究された14のテストスミスを選定し、一般的にテストスミス検出ツールに実装されている。
  • アンケートでテストスミスを開発実践として提示することでバイアスを回避し、理解を容易にした。
  • 質問の明確化と曇りの解消を目的に、4名のテスト担当者によるパイロットアンケートを実施した。
  • 開かれた質問に対する回答について、第三者レビューによるコーディングを実施し、構成妥当性を確保した。
  • アンケートをポルトガル語から英語に翻訳し、全著者がレビューすることで一貫性を維持した。

実験結果

リサーチクエスチョン

  • RQ1RQ1: 専門家は、テストスミスの挿入を引き起こす可能性のあるテストケース設計実践を用いるか?
  • RQ2RQ2: 職業的経験は、テストスミスの挿入に影響を及ぼすか?
  • RQ3RQ3: 専門家の日常的業務におけるどの実践が、テストスミスの挿入を引き起こすか?
  • RQ4RQ4: 特定のテストスミスは、標準化されたまたは習慣的な開発実践と頻繁に関連しているか?

主な発見

  • 熟練した専門家は、会社標準の実践を遵守しても、頻繁にテストスミスを導入している。
  • 職業的経験がテストスミス導入の頻度を顕著に減少させないことが示され、熟練による悪習慣の排除という仮定に疑問が呈された。
  • 選定された14のテストスミスすべてが、少なくとも一部の専門家によって使用されていると報告されており、問題のあるパターンの広範な認識と採用が示された。
  • テストスミスの主な原因として、習慣的なコーディング実践と組織基準への従従が特定された。個人の主観的仮定ではなく、こうした要因が主因であった。
  • 「 poorly Written Test 」、「 Conditional Logic in Test 」、「 Generic Test Data 」といったテストスミスが、一般的な実践として頻繁に挙げられた。
  • 経験年数とスミス導入頻度との間に有意な相関は認められず、熟練度のみでは不十分であることが示された。したがって、経験を超えたトレーニングやツールの導入が求められる可能性がある。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。