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テストっぽくない。
プロセスに対して操作するので、結合テスト用には使えるかも。