gpt4 book ai didi

Python 脚本调用不同的 python 脚本,然后从辅助脚本将字符串/结果带到主脚本

转载 作者:行者123 更新时间:2023-12-01 09:09:22 27 4
gpt4 key购买 nike

我正在编写一个测试软件来使用 PyVISA 和 VISA 以及一些 Agilent IO 库控制一些 Agilent 仪器。我创建了一个“TesPlan”(testplan.py),它应该“调用”一些其他 Phyton 测试脚本(rf_test.py、rf_test1、rf_test2.py 等)

此时,我正在使用“子进程”来打开并执行我的所有测试,但是,我还没有找到将每个测试的结果带入我的主测试计划的方法。

请参阅下面我的代码:

  TEST-PLAN (testplan.py)  

import visa
import time
import subprocess

##SubTest located at:
test = "C:\\python_rf"
os.chdir(test)
import rf_test
subprocess.Popen(['python', 'rf_test.py'])
print (status)
import rf_test1
subprocess.Popen(['python', 'rf_test1.py'])
print (status)

TEST SCRIPT (rf_test.py)
##Do some RF - GPS Testing
if all is OK
status = "PASS"

TEST SCRIPT (rf_test1.py)
##Do some RF - GPS Testing
if all is OK
status = "PASS"

我需要将子测试的状态带入我的主“测试计划”,以便评估状态并允许设备进入下一个测试。

最佳答案

为什么要使用子流程?一般来说,当您调用用 Python 编写的脚本时,子进程不是必需的。您可以将每个测试脚本设置为一个返回状态的函数,例如test()。然后您可以导入这些模块并运行 rf_test.test()rf_test1.test()

如果由于某种原因需要使用子进程,您可以让脚本 (1) 打印状态或 (2) 使用特定的退出代码退出,例如sys.exit(0) 表示成功,sys.exit(1) 表示失败。然后,您可以在情况 (1) 中解析由 subprocess.run(['python', 'rf_test1.py']) 捕获的 stdout 或获取退出代码subprocess.call(['python', 'rf_test1.py']) 在情况 2 中。

关于Python 脚本调用不同的 python 脚本,然后从辅助脚本将字符串/结果带到主脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51792668/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com