Maxima で綴る数学の旅

紙と鉛筆の代わりに、数式処理システムMaxima / Macsyma を使って、数学を楽しみましょう

-Android- Maxima on Androidのテスト自動化 (1)

f:id:jurupapa:20131006151150j:plain

新宿スタイル・コレクション / 新宿ヘブンアーティスト・フェスタ

EOS 70D, EF 50mm F1.8

 

 

Maxima on Androidに機能を追加してGoogle Playに公開する際、必ず事前にテストを行います。今まではこのテストを全て手動で実行していました。しかし、それも辛くなって来たし、テストくらい自動でやるべき、とも思い始めておりました。

 

今回、Androidアプリのテストの自動化を色々と調べてみて、それなり道具立ても揃っていることが分かったので、挑戦してみました。

 

テスト自動化と言っても大きく2つの種類に分かれます。一つはロジックテスト。もう一つはGUIテスト。Androidアプリの場合、ロジックテストはユニットテストであり、GUIテストは統合テストになります。 

 

ロジックテストではコアロジックのテストを行います。MoAの場合にはMaximaを起動して、通信でコマンドを投げ、結果を受け取る部分がそれに相当します。計算そのものは正しいと信じ、その周辺のロジックをテストします。例えば計算途中でIs x positive?などと聞かれることがあります。そのようなことが 通信上正しく処理されているか、ここでテストします。またmaxima-init.macが正常に読み込まれるか、などもテストします。グラフ生成コマンドでHTML5ファイルが正しく作られるか、qepcadが動作するか、などMaximaに依頼する動作は全てロジックテストで検証します。