|
早稲田大学
鷲崎 弘宜
教授
機関別共同研究
Discovery Saga
論文分野別Discovery Saga
研究テーマDiscovery Saga
協賛企業
共同研究先:Leipzig University
Academic
共同研究数 1
Conference Paper
2017 4 13
IEEE : Institute of Electrical and Electronics Engineers
Closing the Gap between Unit Test Code and Documentation
単体テストコードとドキュメントのギャップを埋めたい
Karsten Stocker, Hironori Washizaki, Yoshiaki Fukazawa
【抄録】
Test Driven Development as well as the documentation of tests and their architecture are today an important pillar of software quality assurance. The change of requirements during the implementation phase entails a need to change tests as well as the test documentation of the software. Since unit tests are specified in the implementation language, an interdisciplinary readable documentation must be maintained, which is structurally easier to comprehend and also make the test transparent for persons who are not involved into code writing. This leads to additional effort, costs and possibly inconsistencies between the test and its documentation. This gap in the workflow could be closed by Tanni - a domain specific language, which allows the specification of test cases in the form of interdisciplinary readable tables without requiring programming skills. Based on them executable test code for the respective unit test framework is generated. This merges specification and documentation of unit test cases to one step of work. By this the mentioned additional effort, costs and imminent inconsistencies can be reduced. The Language Workbench Meta Programming System from JetBrains serves as a technological base and is enabler for further positive effects which possibly could be gained by using the described language. © 2017 IEEE.
【抄録日本語訳】
テスト駆動開発、およびテストとそのアーキテクチャの文書化は、今日、ソフトウェア品質保証の重要な柱となっています。実装段階での要求の変更は、ソフトウェアのテストと同様にテストの文書化を変更する必要性を伴います。ユニットテストは実装言語で記述されるため、構造的に理解しやすく、コード記述に関与しない人にもテストが見えるような、学際的な読みやすいドキュメントを整備する必要があります。このことは、さらなる労力とコスト、そしてテストとそのドキュメント間の不一致を招く可能性があります。Tanniは、プログラミングのスキルを必要とせず、テストケースを学際的な読みやすい表形式で指定できるドメイン特化型言語であり、ワークフローにおけるこのギャップを埋めることができます。このテーブルを基に、それぞれのユニットテストフレームワークのための実行可能なテストコードが生成されます。これにより、単体テストケースの仕様化と文書化が1つの作業工程に統合されます。これにより、追加的な労力、コスト、および差し迫った矛盾を削減することができます。JetBrains社のLanguage Workbench Meta Programming Systemは、技術的な基盤として機能し、記述された言語を使用することによって得られる可能性のある、さらなるプラスの効果のためのイネーブラーである。© 2017 IEEE.