Friendly履歴

V1以降は過去のバージョンで作ったテストとの互換性のために残しています。
しかし、できるだけ最新バージョンに置き換えていただきますようお願いします。



今後のVersionはNugetを参照お願いします。


V2.0
1.7からの差分
ライブラリ
・GAC登録が不必要になりました。
・VisualStuidoC++ランタイムが不必要になりました。
・旧のFriendlyOperationにDynamicAppVarを渡せるようになりました。
・FriendlyOperationで配列に["[]"]でアクセスできない不具合を修正しました。
・WindowsAppFriendのCLRバージョン指定方法を変更、追加しました。
・複数スレッドからアクセス可能になりました。(ただし、スレッドセーフではありません。)

TestAssistant
・基本を.Net4.0で動作するようにしました。
・CLRバージョン指定に「自動検出」を追加しました。
・生成コードをdynmic対応にしました。
・NUnitのテンプレートコード生成機能を削除しました。

Friendly
・対象プロセス内で発生した例外のメッセージを改善しました。
・操作の呼び出しに失敗した場合の例外メッセージを改善しました。
・Asyncを強制完了できるようにしました。これはライブラリ実装者が使用します。
・FriendlyOperationでクラス配列を引数に渡した場合、params配列と間違えられる不具合を修正しました。
・複数スレッドでウィンドウ表示されている場合WaitForNextModalが失敗する場合がある不具合を修正しました。

TestAssisatant
・メッセージウィンドウのアイコンを変更しました。
・対象アプリのCLRのバージョンを前回の選択を記憶するようにしました。
・「.Netフィールドで取得」で親クラスのメンバがパスに含まれている場合、それを取得できない不具合を修正しました。
・トップレベルのウィンドウ取得方法を複数にしました。
・プラグインへのusingが不正になる不具合を修正しました。
・スクリプトを強制終了できるようにしました。
・ウィンドウ解析画面のツリーがフォーカスを失っても選択色が濃い色のままになるようにしました。
・ConfigファイルでCLRと.Netのバージョンを指定した場合、4.0しか正常に動作しない不具合を修正しました。
・オブジェクトモニタ機能を追加しました。
・操作からのコード生成機能を追加しました。
・対象アプリへスクリプトでのコード追加機能を追加しました。
・プラグインを記述するためのXMLファイルでPluginType要素をOperatorに変更しました。
 PluginTypeは非推奨になります。

NativeStandardControls
・Emulate~の操作実行時には対象ウィンドウにフォーカスを設定するようにしました
・TestAssistantでRichEdit20WとNativeEditの関係を設定できていなかった不具合を修正しました。
・「操作によるコード生成」に対応しました。
CodeerFrineldyAndToolsV1.7に対応。


V1.6
CodeerFriendlyAndToolsV1.6(2013/04/12)
Codeer.Friendly.Windows.NativeStandardControlsV1.6(2013/04/12)
V1.5からの差分
Friendly
・WindowControlでテスト対象プロセスのウィンドウに対してWindowsApiを呼び出していた箇所をFriendlyOperationで
 直接テスト対象プロセスから呼び出すようにしました。
・WindowControlでWaitForNextZTopを非推奨メソッドとしました。
・WindowControlにモーダルダイアログ待ち合わせメソッドを追加しました。
・WindowControlにトップレベルウィンドウ取得メソッドを追加しました。
・WindowControlで他のメソッドを呼び出す前にWindowControl(WindowAppFriend app, AppVar window)のコンストラクタを呼び出すと
 例外が発生する不具合を修正しました。
・WindowControlで子ウィンドウ取得前にRefreshを内部的に実行するようにしました。
・WindowsAppFriendのコンストラクタでCLRのバージョン指定を間違った場合の例外メッセージをわかりやすくしました。
・TestAssistantにウィンドウ切り出し機能を追加しました。
・TestAssistantで継承関係のあるクラスに対してプラグインクラスが割りあてられない不具合を修正しました。

NativeStandardControls
・テスト対象プロセスのウィンドウに対してWindowsApiを呼び出していた箇所を
 FriendlyOperationで直接テスト対象プロセスから呼び出すようにしました。
・NativeMessageBoxクラスを追加しました。
CodeerFrineldyAndToolsV1.6に対応。


V1.5
CodeerFriendlyAndToolsV1.5(2013/03/03)
Codeer.Friendly.Windows.NativeStandardControlsV1.5(2013/03/03)
V1.3からの差分
Friendly
・NewInfoで構造体を引数なしで生成することができない不具合を修正しました。
NativeStandardControls
初版


V1.4
欠番


V1.3
CodeerFriendlyAndToolsV1.3(2013/02/27)
V1.2からの差分
・例外発生時のメッセージの内容を改善しました。
・FriendlyOperationの呼び出しで値型に対してnullを設定した場合、正しく例外が発生するように修正しました。
・WindowControlにトップレベルウィンドウ取得用のstaticメソッドを追加しました。
・WindowControlにウィンドウ情報取得用のプロパティーを追加しました。
・WindowControlのIdentifyFromDialogIdで同階層に同一のダイアログIDが存在する場合、正しく例外が発生するように修正しました。
・Asyncに非同期終了待ち合わせメソッド(WaitForCompletion)を追加しました。


V1.2
V1.1からの差分
・スプラッシュウィンドウが先行で表示されるアプリで起動直後の接続に失敗する場合の例外メッセージをわかりやすくしました。
・WindowControlでWaitForNextZTopで待ち中に対象アプリケーションが終了した場合、フリーズする不具合を修正しました。
・テスト対象アプリで操作中に発生した例外が正しく通知されない不具合を修正しました。
・FriendlyOperationで呼び出すメソッドの引数にSystem.Runtime.InteropServices.Outで修飾されているものがある場合
 呼び出しに失敗する不具合を修正しました。
・WindowControlのIdentifyDialogIdで階層構造になっているダイアログでの取得が正しくない不具合を修正しました。
 また、階層構造の場合、階層分ダイアログIDを渡せるように仕様変更しました。
・WindowControlにIsWindowとWaitForDestroyのインターフェイスを追加しました。
・TestAssistantでプラグインの継承関係を正しく表示できない不具合を修正しました。


V1.1
v1からの差分
Codeer.Friendly.Windows.Grasp.WindowControlのメソッドIdentifyFromWindowClassにスペルミスがあったので修正しました。
その他、公開クラスにスペルミスがないことを確認しました。
それに伴い、ライブラリdllのアセンブリバージョンを1.1.0.0に変更しました。


V1

β9~正式版までの差分
β9投稿不具合で指摘いただいた内容が修正されています。
β版の公開は終了いたしました。
多くのフィードバックありがとうございました。


β9
β8からの差分
・WindowsAppFriendでCLRのバージョンに不正な文字列を設定しても動作する不具合を修正しました。
・ExecuteContextをDisposeした後にまだ通信できてしまう不具合を修正しました。
・TestAssistantでCRL選択の文言を変更しました。
・TestAssistantでWindowControlの[]プロパティーを生成した場合の不具合を修正しました。
・TestAssistantでF5連打でフリーズする不具合を修正しました。
・TestAssistantでスクリプト実行中、画像取得中、タイプ取得中にビジー状態にならずに、無効状態になるようにしました。


β8
β7からの差分
・メモリリークを修正しました。
・TestAssistantへのプラグインの仕組みを変更しました。


β7
β6からの差分
・インストーラで「Visual C++ 2010 ランタイムライブラリ」がインストールされるのをやめました。
 (サービスパックのあたっているものと、そうでないものがあり、どちらを使用するかはお客様の選択に委ねます。)


β6
β5からの差分
・インストーラをWindows8に対応しました。
・64bitOSのインストール先をProgram Files (x86)以下に変更しました。
・WindowControlにWindowsAppFriendを取得するインターフェイスを追加しました。
・TestAssistantでドッキング回りの不具合を修正しました。


β5
β4.6からの差分
・TestAssistantでタブが長い場合にタブを消したときに描画が乱れる不具合を修正しました。
・TestAssistantのバージョン表示でファイルバージョンも表示するようにしました。
・TestAssistantの対象プロセス選択でメインウィンドウがなくても、有効なウィンドウを持っていれば表示されるようにしました。
・TestAssistantで最前面画面取得時にメインウィンドウと最前面のウィンドウのスレッドが異なる場合の不具合を修正しました。
・TestAssistantで文言を一部変更しました。


β4.6
β4からの差分
・FriendlyOperation時の通信でまれにフリーズする不具合を修正しました。
・非同期通信のトリガ処理も非同期になるように仕様変更しました。
・WindowsAppFriendの寿命が先に終わる不具合を修正しました。
・TestAssistantで画像クリックでウィンドウの選択が変更されないモードを追加しました。(重なったウィンドウでのクリックエミュレート用です。)


β4
β3からの差分
・WindowsAppFriendのコンストラクタで対象アプリケーションに接続するときの不具合を修正しました。
・AsyncのIsCompletedの不具合を修正しました。
・TestAssistantのNUnitコード生成のusingするネームスペースを変更しました。
・TestAssistantのメッセージトレース機能で再生コードを出力したときに、対応するメッセージ文言があれば、コメントで残すようにしました。
・TestAssistantで実行するスクリプトの動作するCLRのバージョンを指定できるようにしました。
・Activeなウィンドウに関する仕様を削除しました。(最前面ウィンドウと重複する部分が多いためです。)
・インストーラで.Netフレームワークをインストールしないようにしました。


β3
β2からの差分
・複数バージョンインストール準備のための実装が入りました。(1以降のバージョンからは複数バージョン同時動作を可能とするための準備です。)
・AppVarをforeach処理するための機能をEnumerateクラスに委譲しました。
・AppExpanderの定義をCodeer.Friendly.Windows.GraspからCodeer.Friendly.Windowsに移動しました。
・WPFの画面取得時の不具合修正しました。
・各アセンブリバージョンを9.3.0.0に変更しました。
・NUnitの生成ファイルのusingを必要最低限にしました。
・TestAssistantの文言を修正しました。


β2
β1からの差分
・以下のアセンブリのバージョンが0.9.0.0から0.9.1.0に上がりました。
Codeer.Friendly.dll
Codeer.Friendly.Windows.dll
Codeer.Friendly.Windows.Grasp.dll
・非同期実行に関する仕様を変更しました。以下のクラスのインターフェイスが一部変更になっています。
AppFriend
AppVar
Async
WindowControl
・WindowControlの.Netのタイプから子GUI要素検索のインターフェイスが変更になりました。以下のクラスのインターフェイスが一部変更になっています。
WindowControl
・テストプロセスが管理者権限で対象アプリケーションがユーザ権限の場合に接続できない不具合を修正しました。
・TestAssistantのウィンドウ情報取得画面の操作で右のツリービューで変数名称を変更できるようになりました。
・TestAssistantのWindowメッセージ画面のメッセージフィルタ数が増えました。
・TestAssistantのWindowメッセージ画面のメッセージログ表示で指定のあるメッセージはWM_XXXと人間にわかりやすい識別子で表示されるようになりました。
・TestAssistantの以下のアイコンが変更されました。
アプリケーションアイコン
メインウィンドウアイコン
Windowメッセージ取得画面の取得開始アイコン


β1
初版