我使用Appium在C#中测试安卓设备。
每次运行测试用例时,我都需要转到主屏幕,然后开始用例。这可以通过两种方式实现,使用: LaunchApp和StartActivity函数。
据我所知,LaunchApp再次发布应用程序,即扼杀正在运行的应用程序,并从一开始就启动应用程序。不过,我将在启动活动中结束。这将释放内存空间,因此应用程序不会出现压力或内存问题。StartActivity不会杀死应用程序,而是切换到特定的活动。这和实际案例测试是一样的。
我的上述说法是真的吗?或者两者之间的确切区别是什么?
发布于 2018-06-03 15:42:29
一般来说,你是正确的,但在这里添加更多的上下文是值得的。
它的工作原理:
默认情况下,launchApp()执行以下操作:
appWaitPackage、appWaitActivity)startActivity做了以下工作:
真实生活示例,例如具有LoginActivity -> NavigationActivity -> WhateverActivity流的app:
( a) launchApp()将清理应用程序,会将 you 移回LoginActivity
startActivity(NavigationActivity)只会启动NavigationActivity,这样你就不用登录应用程序了。
( a) launchApp()将与Q1相同
startActivity(NavigationActivity)将在Incorrect package and activity上失败,因为app流不允许它。
我在每次测试之前使用startActivity来访问start point,这有助于通过避免应用程序重新安装和多次重新登录来加速测试套件。
https://stackoverflow.com/questions/50638426
复制相似问题