hiro(iskwa)'s blog

プロジェクトマネジメントとかソフトウェアを中心としたシステム開発を中心として日々気づいたことを記録していくブログ、にしていくかも

テストライブラリ Friendly を触ってみた

UIテスト*1のライブラリを触ってみた。

GitHub - Codeer-Software/Friendly.Windows

背景

業務でUIテストを手動でやっていて、少し辛い。"Be Lazy."の言葉に従って自動化のF/Wやライブラリを触ってみている。
Google検索で見つけてひょっとしたら良いカモ、と思ったので。

準備・実装

NuGetでダウンロードして、テストコードを書く。

[TestMethod]
public void TestMethod1()
{
	var app = new WindowsAppFriend(Process.Start("UITestSample.exe"));
	var process = Process.GetProcessById(app.ProcessId);

	dynamic form = app.Type<Control>().FromHandle(process.MainWindowHandle);
	form.SetTextBoxText("HELLO");
	string text = form.GetTextBoxText();

	Assert.AreEqual("HELLO", text);

	process.CloseMainWindow();
	app.Dispose();
}

所管

UIにメッセージ送って動作させる物ではないのでUIテストっぽくない。
プロセスに対して操作するので、結合テスト用には使えるかも。

*1:実際は結合テスト