如何使用Python以编程方式启动appium服务器

时间:2018-08-07 19:46:36

标签: python python-3.x appium appium-android python-appium

我想使用Appium和python编写一个android测试框架。 鸦片链接:http://appium.io/

因此,使用npm安装appium之后,要启动其服务器,我需要在终端中执行命令“ appium”。它将启动服务器。 启动后看起来像这样:

    ranits-MacBook-Pro:$ appium
[Appium] Welcome to Appium v1.8.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723

但是我需要使用python从我的代码中启动appium服务器吗?

有帮助吗?

3 个答案:

答案 0 :(得分:1)

要以编程方式(Python方式)启动appium服务器,您所需要做的就是执行以下代码

导入操作系统 os.System(“ appium”)

这将在后端启动appium服务器。其他启动appium服务器的方法是

导入操作系统 os.system(/Path/of/ur/main.js)

在py文件中输入这些代码并执行..服务器将启动

答案 1 :(得分:0)

首先可以手动检查shell上的“ appium”命令是否启动了appium服务器(在您看来,它可以正常工作)。就我而言,它不是与Appium桌面版一起安装的。发布我为解决此问题所做的工作的详细信息,以防他人使用:

  1. 已安装npm(作为node安装的一部分,可从nodejs.org获得MSI)
  2. npm install -g appium

现在要回答您的主要问题,以下是我在Python脚本中用来在新窗口中启动appium服务器的内容,以便它与脚本其余部分分开运行的情况:

import os
os.system("start /B start cmd.exe @cmd /k appium") 

如果要更改appium服务器的端口(例如,更改为4728)(可能是当您有多个用于多个设备的服务器时),可以使用以下命令:

os.system("start /B start cmd.exe @cmd /k appium -a 127.0.0.1 -p 4728")

答案 2 :(得分:0)

Python客户端实际上带有一个名为AppiumService的便捷模块,您可以使用该模块以编程方式启动/停止Appium服务器。

from appium.webdriver.appium_service import AppiumService

appium_service = AppiumService()

首先,

self.appium_service.start()

要停止,

self.appium_service.stop()

从字面上看,我相信这是启动/停止Appium服务器的一种比发出上述解决方案中的OS系统命令更干净的方法。