1

現在、 White UI-Automation フレームワークを使用してテスト ケースを自動化しようとしています。
これを行う際に、ドラッグアンドドロップに問題があります。ボタンから画面上のポイントにドラッグしようとしていますが、これは他の 2 つのポイントの位置に基づいて計算されます。

ボタンがクリックされ、マウスが正しい位置に移動すると、マウスが手動で移動またはクリックされるまでアプリケーションがハングし、ドロップが発生してテストが続行されます。マウスが手動操作を受け取らないと、アプリケーションはハングアップし続けます。

コードは次のようになります。

var criteria = SearchCriteria.ByText(xText);
var yLocation = window.Get(crite);
var yPoint = yLocation.ClickablePoint;
criteria = SearchCriteria.ByText(yText);
var xPoint = window.Get(crite).ClickablePoint;
var dropPoint = new Point(xPoint.X, yPoint.Y);
criteria = SearchCriteria.ByText(buttonName);
var button = (Button) window.Get(criteria);
Mouse.Instance.DragAndDrop(button, button.ClickablePoint,yLocation,dropPoint);

この最後の行より後のコードは実行されません。

助けてくれてありがとう。

4

2 に答える 2

3

ここをチェックしてください:http://white.codeplex.com/discussions/271672

このページは回避策を示しています:

//Point the mouse for drag

Mouse.Instance.Location = draggedItem.ClickablePoint;

Mouse.LeftDown();

//Move the mouse a little down
Mouse.Instance.Location = new Point(draggedItem.ClickablePoint.X, draggedItem.ClickablePoint.Y + 1);

//Move to the new window
targetWindow.Focus();

//Set the point to drop
Mouse.Instance.Location = targetWindow.ClickablePoint;

//Drop
Mouse.LeftUp();
于 2011-10-05T13:47:38.703 に答える
0

答えるべき本当の質問はありませんが、(役立つ?) フィードバックを提供できるように努めます。

私は White-UI-Automation フレームワークについて知りません。提供されたリンクを使用して有用なドキュメントを見つけることができませんでした。DragAndDrop は、ドロップが完了する前に戻らないだけだと思います。これは、DoDragDrop が WPF でどのように機能するかに似ています。

この場合、DragAndDrop がハングしているとは言いませんが、アプリはドロップが完了するのを待ってから次に進みます。

//ダニエル

于 2011-05-04T08:35:37.623 に答える