Appium iOS杀死应用程序没有删除plist

时间:2015-04-01 15:52:12

标签: ios ruby appium

我正在尝试运行以下步骤: 1.第一次启动应用程序,查看条款和协议 2.同意条款和协议 3.杀死应用并重新启动 你不应该看到条款和协议

现在,appium正在运行而没有--no-reset标志,因为我确实需要在方案之间重置应用程序,但是以下重新启动应用程序并删除了plist(就像删除应用程序和重新启动)

sleep(3)
pf_name = $driver.caps['platformName']
pf_ver = $driver.caps['platformVersion']
dev_name = $driver.caps['deviceName']
auto_accept_alert = $driver.caps['autoAcceptAlerts']
app_path = $driver.caps['app']
Appium::Driver.new({ caps: { platformName: pf_name, platformVersion: pf_ver, deviceName: dev_name, autoAcceptAlerts: auto_accept_alert, app: app_path, noReset: true} })
$driver.restart
$driver.close_app
$driver.launch_app

我也试过了$ driver.close_app和$ driver.launch_app,但他们做了同样的事情(删除了plist以及杀死了应用程序)。

有没有办法可以在不删除plist的情况下杀死应用程序?

1 个答案:

答案 0 :(得分:0)

我找到了答案。

这有点像一个全方位的回答。

  1. 标记需要查杀和重新启动的方案,而无需重置某些内容,例如@needPlist
  2. 在hooks.rb中,在Before for @needPlist中,调用Appium :: Driver.new并将noReset标志设置为true。调用$ driver.restart(确保在After中为相同的标记,在noReset标志设置为false的情况下调用Appium :: Driver.new,然后重新启动驱动程序)
  3. 在步骤定义中,您现在可以调用$ driver.close_app和$ driver.launch_app而不会丢失您的plist
  4. 我认为应该这样做。