有没有办法在 Xamarin UITest 中关闭并重新连接到我的应用程序?
在我的测试用例中,我想关闭并重新连接我的 Android 应用程序。
取决于您所说的“关闭”,但这里有几种方法......
在MainActivty
您的Xamarin.Forms
Android 应用程序中,添加一些UITest
后门:
[Export("HardExitBackdoor")]
public void HardExitBackdoor()
{
Log.Info("UITest", "Finish");
Finish();
}
[Export("BackgroundBackdoor")]
public void BackgroundBackdoor()
{
Log.Info("UITest", "MoveTaskToBack");
MoveTaskToBack(true);
}
现在在您的测试中,您可以“退出”您的应用并“重新启动”它:
[Test]
public void HardRestartApp()
{
app.Invoke("HardExitBackdoor");
BeforeEachTest();
WelcomeTextIsDisplayed();
}
[Test]
public void BackgroundedApp()
{
app.Invoke("BackgroundBackdoor");
BeforeEachTest();
WelcomeTextIsDisplayed();
}
[Test]
public void SoftRestartApp()
{
for (var i = 0; i < 10; i++)
app.Back();
BeforeEachTest();
WelcomeTextIsDisplayed();
}
Android/Java 和 Calabash/Ruby
public class MainActivity extends Activity {
~~~~
public void HardExitBackdoor() {
Log.w(TAG, "finish");
finish();
}
~~~~
}
要在 Ruby/calabash-android 中调用此方法:
backdoor "HardExitBackdoor"