スクショに赤枠を付けるツールを作って手動テストの手間を軽減した

はじめに

この記事は Misoca+弥生 Advent Calendar 2019 の10日目エントリーです。

こんにちは、弥生の竹山です。
弥生会計 の開発を担当しています。今年は軽減税率に対応した 弥生会計20 を無事リリースできました! この記事では、今までの開発で手動テストに対して取り組んだことについて紹介します。

背景

弥生の開発プロセスは非常にしっかりしていて、テストの自動化にも積極的に取り組んでいますが、一方で様々な理由から手動テストの作業も存在しています。

弥生のテスト工程では、作業の証明と検証のために「エビデンスでテスト」しています。手順に沿って操作してスクリーンショットを取り、スクリーンショットの確認箇所に赤枠を付けながらテストしていきます。

2018年の中途入社時、この作業を基本的にペイントで行っていて、素早いペイントさばきで期日を守っていると知り、「これは自分には難しい・・・」と、ツールを作ることにしました。

作ったツール

作ったツールは、フォルダ内の画像を一覧表示して、赤枠を付けたりファイル名を連番で付けたりできるものです。 WPFで、フレームワークとしてPrismを使用しています。

f:id:ym_AdventC:20191209101959p:plain
エビデンスツールの概観

こんな風に作った

まずは最低限の以下の機能を作り、目下の手動テストを楽にできました。

  • フォルダ内の画像を一覧表示
  • マウスで赤枠を描画
  • マウスホイールや上下キーで画像を前後切り替え

そして、面白くなって延々と作りこんでいき、みんなに使ってもらうことにしました。

フィードバックへの対応

使ってもらったところ、予想外に様々なフィードバックがありました。細かな改善を順次重ねたのですが、特に以下のような反省がありました。

1: 元に戻す機能が欲しい

作成当初は割り切って機能を搭載していませんでした。ですが、その後すぐに欲しいと言われました。 自分でも使ってみると欲しくなる機能でした。

→元に戻す機能は先に想定しておく
本格的に使うと欲しくなります。結局実装したのですが、最初に元に戻すことを考えていなかったので、ビットマップで途中経過を保持することになり、メモリーの消費が大きくなりました。仕組みの面でも早めの検討が大事です。

2: アプリケーションが落ちる

ファイル操作関係の例外処理の不備でしたが、ログを出力していなかったため確認に手間がかかってしまいました。

→ログ出力を先に作る
最初はログ出力のことはあまり考えていませんでした。しかし、小さなツールでも、規模が大きくなったり、他部署など直接のサポートができないユーザーが生まれる可能性がありました。他人に使ってもらうなら、ログ出力を実装すべきでした。

3: 描画時、マウスカーソルを十字にしてほしい

小さな要望なのですが、印象に残っています。カーソルはすべて矢印のままでしたが、一般的なソフトでは描画時のマウスカーソルは十字型でした。

→UIのセオリーは守る
セオリーを外れつつも、矢印カーソルでもマウス描画はできると思っていましたが、些細な動作の違いが、ユーザーにとってのわかりやすさを左右すると気づきました。

まとめ

業務改善ツールを作ることはとても楽しいことです。業務改善するだけでなく、既存コードのメンテナンスでは味わえない、0から作る楽しさを味わうことができます。作れば周囲から感想が返ってきて、励みになります。
良いことばかりですので、皆様も身近な業務を改善するツールを作ってみてはいかがでしょうか?

もくテクのご案内

これまでの消費税軽減税率対応で苦労した点について、12/19(木)、弥生の技術イベント「もくテク」でLTします! 税務ソフトの開発特有の面白さもお伝えしたいと思っています。ぜひ秋葉原UDXへお越しください! mokuteku.connpass.com

Misoca+弥生 Advent Calendar 2019 明日の担当は、ykk_terasaki さんです。 お楽しみに!!