2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VeriServeAdvent Calendar 2022

Day 14

Testmodeller.ioというツールを触ってみた

Last updated at Posted at 2022-12-13

はじめに

最近個人的に(会社的にも)ホットな技術がモデルベースドテスト(MBT)で、関連ツールがあれば触るようにしています。
Curiosityという会社からTestmodeller.ioというツールが出ているので、ちょっと調べてみました。名前的にはtest modellerなのでMBTどまんなかですね。

Testmodeller.ioの概要

Webサイトでは以下が書かれています。
image.png

  • フローチャートからテストの自動生成ができて
  • それを使うことでバグの早期検知ができて
  • みんなでコラボレーションしながらよいシステムを作れる

みたいな感じでしょうか。
フローチャートをモデルと考えるとモデルベースドテストですね。あとはスプリントやら毎回リリースやらの言葉から基本的にアジャイルを想定していることがうかがえます。コラボレーションに価値を置いているのも共感できる点ですね。

Testmodeller.ioのツールチェーン

下図のように、入力としてはテスト実行記録やBDDシナリオ、そしてBPMNダイアグラムが使えるようです。
Testsはテスト管理でしょうか。
テストデータ入力としてエクセルを含めたDBが使え、テスト実行では主要なテスト自動実行ツールをカバーしているようです。
MBTと銘打っていることから、BPMNをメインの入力にし、テストデータの入力を加えることでテスト自動実行までつなげる、というのがこのツールの根幹だと思われます。

image.png

実際の使用感

上述のメインの流れを少し試してみます。

まずはモデルのインポートです。エクセルで書かれたモデルも対応しているようです。
また、ツールのGUI上でモデリングをすることも可能です。
基本的にはBPMNを主要なモデルとしているようです。
image.png

次にテストシナリオの生成です。
BPMNからテストシナリオを自動生成できます。カバレッジについては指定が可能です。
生成ロジックについては特別なものはないように見えます。
フロー系のモデルに基づいた一般的なテスト生成ロジック、だと思ってよさそうです。
image.png

最後にテスト実行ツールに渡すテストコードを生成して、メインの流れ完了です。
image.png

感想

これはいい

  • モデルからテスト実行までつながる感じはすごく良い
  • テストケースとモデルの部品が対応付けされて可視化される
  • 対応モデルを絞って、使いやすさに振り切った感じ。スピードが要求される場面でモデルを使う、という文脈では使い道がありそう

もっとこうなるといいのにな

  • 対応モデルが限定的
  • モデルとコードの距離が近い(詳細度が高いモデルである)ため、コードベースのテストとの使い分けが難しい?
  • 汎用ツールの常だが、テスト生成ロジックはもう少し複雑なものがあってもいいな

というところです。MBT関連のツール、もっと知りたい。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?