Azure DevOps发布管道内联Powershell脚本无法运行python unittest套件

时间:2018-12-20 09:59:36

标签: powershell azure-devops selenium-chromedriver python-unittest

我在Azure DevOps中有一个发布管道设置,用于运行回归测试套件。我正在使用Selenium(Python绑定)和Python单元测试框架在 Microsoft 自托管Windows代理上远程运行这些测试,该框架调用chromedriver.exe来运行测试。

但是,当发布作业到达任务“运行Python单元测试”时,它冻结,并且我看不到任何输出(尽管当我在代理上打开任务管理器时 我可以看到chromedriver和chome实例正在运行,这表明正在发生某些情况。

其他信息-

  • 当我所有的回购和最新提交被撤消时(从管道中的较早任务开始),我能够成功连接到代理
  • 将Chromedriver路径设置为代理上的环境变量
  • 我正在使用Chromedriver 2.43
  • 我正在使用Python 2.7.14作为解释器(也在Path中设置为env变量)

内联powershell任务在“要运行的脚本”字段中具有以下内容-

cd C:\ path \ to \ folder \ with \ tests

python tests.py登台

此任务在DevOps管道中运行时显示的消息是-

正在等待代理的控制台输出...

console output

当我使用完全相同的命令在代理上本地运行测试(打开代理上的cmd.exe终端)时,我可以看到chromedriver打开并且测试按预期运行(终端上也有输出)

为什么从发布管道的内联Powershell任务中调用这些测试时,为什么我无法运行运行,但是在VM上调用它们时却能够看到测试运行?为什么在测试运行时输出仍然不显示?

(我还尝试了常规的cmd.exe任务来代替嵌入式Powershell任务,遇到了相同的问题)

任何帮助将不胜感激,谢谢:)

编辑:

运行一个简单的硒测试,以检查一切是否正常,并获得成功的结果。但是-

  • 在执行测试时,我仍然看不到控制台输出
  • 我仍然无法“看到”在VM上执行的任何操作(因此它似乎正在作为后台任务运行,但看不到chrome启动和导航至页面等)

0 个答案:

没有答案
相关问题