タイトルはすでにそれを説明しています。UIAutomationスクリプトのtarget.captureScreenWithNameで撮影したスクリーンショットをいくつかの参照画像と比較するためのソリューションを探しています。これは、いくつかのカスタムビューをテストするのに非常に便利です。
3 に答える
Mac用の無料のImageMagicKを使用してみてください。iOS 5以降、テストから直接外部タスクを実行できる新しいUIAHost.performTaskWithPathArgumentsTimeout(path、args、timeout)があります。この関数をパラメーターとともに使用してImageMagicスクリプトを実行するだけで、テストから直接画像比較結果を取得できます。
var result = UIAHost.performTaskWithPathArgumentsTimeout(path, args, timeout)
パス-画像比較スクリプトへの文字列。
args-次のようなImageMagicKユーティリティのパラメータとその値の配列:
var args = ['param1', 'param1Value', 'param2', 'param2value'....];
ImageMagicKの詳細:http: //www.imagemagick.org/script/index.php
UIAHostリファレンス: http ://developer.apple.com/library/ios/#documentation/UIAutomation/Reference/UIAHostClassReference/UIAHost/UIAHost.html
UIAから直接それを行うことは不可能です、少なくとも私はこれを行う方法を見つけられませんでした。すべてのスクリーンショットはテスト結果フォルダーに保存されます。その後、好きなツールでそれらを処理できます。
ZucchiniFrameworkをチェックしてください。UIAutomation APIを適切にラップし、テストアサーションとしてスクリーンショットを作成できます。