我使用Robotframework(3.0)+ AppiumLibary(1.4.1)进行Android测试,只是遇到APP实际停在不同appActivity的情况取决于它是否已登录使用关键字"打开应用程序"
appActivity的流程将是
(1)(APP尚未登录)打开应用程序 - >停在 LoginActivity - > (输入帐户/密码登录) - > MainPageActivity
或
(2)(已登录的应用程序)打开应用程序 - > LoginActivity - >停在 MainPageActivity
我搜索过很多帖子,大部分答案都设置为 appActivity = LoginActivity 和 appWaitActivity = MainPageActivity ,
但问题是,
如果我之前已经登录过这个APP,它实际上会自动进入 MainPageActivity ,
但是,如果APP尚未登录,则不会进入 MainPageActivity ,除非我们输入帐户/密码,这可能会导致失败,如下所示:
WebDriverException: Message: A new session could not be created.
(Original error: xxxx/.fragment.MainActivity never started. Current: xxxx/.LoginActivity)
那么无论如何要在启动时处理可能的不同应用程序或处理上述情况?
谢谢!
答案 0 :(得分:0)
您可以在AppWaitActivity中使用通配符来等待您的应用程序:
示例:
@Test()
public void testStuff() {
String var1;
String var2;
/* Code specific to this test and should only be ran once. */
doSomething(param1)
/* Contains code looking for files that may or not be ready by the time the code is ran. */
/* I want to try this code then wait and retry up to a max of 3 retries. */
assertStuff(var1, var2);
}
希望这会有所帮助。