Xamarin.Forms アプリを作成していて、UITest を使用してビューの正しい動作をテストしたいと考えています。ビューは、ボタンのクリックなどのユーザー入力に反応するだけではありません。代わりに、この時点で 1 つの要素を非表示にして別の要素を表示するなど、ビューの変更につながるバックグラウンド操作があります。もう 1 つの例は、バックグラウンド操作によって生成される要素で ListView を埋めることです。これらの変更は、プロパティがビューにバインドされているビューモデルで行われます。ここで、バックグラウンド操作をシミュレートし、View が正しく動作することをテストしたいと考えています。ただし、Test クラスで Xamarin.Forms を参照できないため、UITest プロジェクトで ViewModel を操作することはできません。この方法でアプリケーションをテストすることを意図していないようです。アプリ全体は UITest のブラック ボックスであり、マウスとキーボードの入力によってのみ操作できます。アプリの内部、対応する ViewModel などにアクセスするにはどうすればよいですか。私はすでにこの問題を検索しましたが、何も見つかりませんでした。多分私は間違った方向に探しています。どんな助けでも大歓迎です。
質問する
611 次
2 に答える
0
iOS では、それを実現するための というメソッドがすでに用意されていますSendAppToBackground
。TimeSpan
オブジェクト(wiki 情報)を使用してバックグラウンドで時間を過ごすこともできます。ただし、Android ではこれを実現できません。
UITest プロジェクトで使用するサンプルを次に示します。
public void SendAppToBackground(IApp app, TimeSpan timeSpan)
{
if (OnAndroid)
{
return;
}
((iOSApp)app).SendAppToBackground(timeSpan);
app.Screenshot("Return from background state.");
return this;
}
于 2019-05-28T11:43:15.683 に答える