使用Microsoft托管代理在Azure管道控制台中执行Appium服务器的最佳方法是什么?甚至可行吗?我正在使用vmImage:'vs2017-win2016'
我设法使用Cmdline和powershell脚本启动服务器,但是我不确定服务器是否实际上在后台运行。
到目前为止,我已经尝试过-
有没有办法验证appium服务器是否存在?
我正在尝试使用Azure Repo&Pipelines,Robot Framework,Appium和Android Studio模拟器来实现移动应用程序自动化测试。为此,我需要在后台运行Appium服务器。在进入Appium运行阶段之前,我正在管道中进行所需的工具安装。
有没有办法验证appium服务器是否存在?
尝试使用TASKLIST /FI "IMAGENAME eq cmd.exe" /V
之类的命令。
[对我来说,我使用三个cmd脚本(CMD任务)进行测试,task1 => npm install -g appium
,task2 => start appium -p 4723
,task3 => TASKLIST /FI "IMAGENAME eq cmd.exe" /V
。这是task3的输出:
由于cmd.exe
将在任务完成时被杀死,因此cmd.exe(task1)和cmd.exe(task2)不存在。
直到第三个任务,只有新创建的控制台(appium -p 4723)和cmd.exe(task3)确实存在。 appium -p 4723
是您想要的,如果我们不杀死它的话,它确实存在于后台。
注意:
1.I使用second命令start appium -p 4723
进行测试。预期的行为是您的first命令将启动服务器,但它永远保留在Cmdline作业中。如果当前任务尚未完成,则Azure Devops管道不会转到下一个任务。因此,如果cmd任务是一个持续运行的侦听器,则它将一直停留在Cmdline任务中,直到超时为止。
第二个命令在Azure Devops管道环境中更好。
2。您使用的是microsoft-hosted agent,它将在管道完成后恢复。因此,在作业/管道完成后,您的Appium监听器将被杀死。
3。关于Azure Devops中的Appium测试,可以检查this document。