使用Python脚本连接Splunk服务器,并在Robot Framework测试中应用
我刚接触Python,遇到了一些问题。这里有一段代码,是用来连接Splunk服务器并打印已安装的应用程序的。
import splunklib.client as client
HOST = "server.splunk"
PORT = 8089
USERNAME = "UserABC"
PASSWORD = "Passw000rd"
# Create a Service instance and log in
service = client.connect(
host=HOST,
port=PORT,
username=USERNAME,
password=PASSWORD)
# Print installed apps to the console to verify login
for app in service.apps:
print app.name
我在我的系统的命令行中试过这段代码,运行得很好。不过,我打算在Robot Framework测试中使用这个功能,所以需要先定义这个功能,这样才能有一个我可以用的关键词。我猜可能需要像下面这样:
import splunklib.client as client
def setServer(HOST, PORT, USERNAME, PASSWORD):
HOST = "server.splunk"
PORT = 8089
USERNAME = "UserABC"
PASSWORD = "Passw000rd"
service = client.connect(host=HOST,port=PORT,username=USERNAME,password=PASSWORD)
for app in service.apps:
print app.name
print ("\n")
我的问题是,当我运行这个时,命令行里什么都没有打印出来。有没有什么建议?
谢谢!
1 个回答
1
在Python库中使用的print
命令不会在Robot Framework的控制台上显示,这是正常的情况。如果你想确认你的代码是否运行过,以及print
是否执行了,可以查看Robot生成的log.html
文件。这个文件里应该会包含你的打印内容。如果你真的想在Robot控制台上显示一些东西,就需要在你的Robot测试中使用Log To Console这个关键字。不过,由于你的print
是在Python库中,你需要在你的Python代码中导入内置库。只要这样做,你就没问题了。