公司的测试平台通过Process process = Runtime.getRuntime().exec("python " + "脚本地址")执行python测试脚本。
执行普通的python脚本没有问题,但是当python脚本中引入import xlrd,用Excel表格中获取数据时,通过平台以上的方法就无法正常运行(生成的日志为空文件)。请教各位大神问题所在。
另外,单独在IDE中运行从Excel表格中获取数据的python脚本正常。粘部分python代码如下:
def getColumnIndex(table, columnName):
columnIndex = None
for i in range(table.ncols):
if (table.cell_value(0, i) == columnName):
columnIndex = i
break
return columnIndex
def readInputListByColumnName(fileName, sheetName, columnName):
workbook = xlrd.open_workbook(fileName)
sheet = workbook.sheet_by_name(sheetName)
index = CaseBase.getColumnIndex(sheet, columnName)
inputlist = sheet.col_values(index, start_rowx=1)
return inputlist
报什么错误? 建议脚本里加上文件是否存在check, 估计是路径问题
脚本里所有引用 的包和脚本都放在同一级的目录下.通过平台执行测试引用excel表的python脚本后,没有日志生成.
@一只吃青菜的鸟: 路径都是相对路径? 还是绝对路径。 主要用来确认路径问题。 后面再看一下权限问题
@风云力: 路径是相对路径,脚本添加上传到服务器指定的位置,与脚本同级的有一个基类包,基类包里含有相关的excel文件。脚本中访问excel文件路径为"基本类包/excel.xlsx"
@风云力: 后来把调用excel的路径改为绝对路径就好了,还是谢谢你!
我也是遇到这个问题,把 csv 的路径改成绝对路径就好了,很是感谢
不客气,共同学习~
有搞自动化测试的大侠帮忙解答一下吗?
– 一只吃青菜的鸟 6年前