Appium 遇到 “A new session could not be created"的问题处理

匿名 · 2018年08月26日 · 356 次阅读

问题原因
在我们执行测试多条测试用例的时候,可能会遇到 “A new session could not be created” 的问题,之所以会出现这个问题,很可能是因为:

  1. 你之前的测试 case 异常,导致 Appium 服务器上的 session 并没有正确结束;
  2. 被测的应用程序还处于前台,导致重新建立 session 时失败。

解决方法:

  1. 在执行用例之前的 setUp 方法中,使用 adb 命令,强制把 app 关闭掉;
  2. 在执行完用例之后的 tearDown 方法中,关闭 session,保证下一条用例开始时,Appium 服务器环境是初始化状态;
  3. 在 Appium 服务器启动时,加上 “--session-override”,下一条测试用户运行时,会覆盖之前的 session,保证了 session 能够正常被创建。

一些提高测试 case 稳定性设计思路:

  1. 设计测试用例的时候,尽量减少用例的耦合性,每个用例之间相互独立; 2 执行完用例之后,回到初始化状态,如测试完一个收藏功能之后,需要取消收藏,初始化数据;
  2. 在用例执行前,初始化 session 服务,在用例执行之后,断开 session;
  3. 可以在每个测试 case 中,加上try...catch...exception(Java)、try...except(Python) 进行异常处理,即使这条用例失败了,也能保证下一条用例正常执行;
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册