我正在使用groovy创建所有测试用例结果的excel报告。由于文件在每次执行后都会被覆盖,因此我希望将文件名附加当前时间戳,以免被覆盖。
下面是我尝试过的代码:
addListenerForSingleValueEvent()
我遇到以下错误:
groovy.lang.MissingMethodException:方法的无签名:java.lang.String.renameTo()适用于参数类型:(java.io.File)值:[C:\ TestData \ output.xls_2020-01- 09 16:13:02.00805 +0530]在第8行出现错误
答案 0 :(得分:0)
您可以使用以下代码,以便文件名中没有任何非法字符,例如:
。
更新:
renameTo
是File
类型的函数,您试图用string
类型进行调用。因此,您遇到了错误。
import com.eviware.soapui.support.XmlHolder
import jxl.*
import jxl.write.*
import org.apache.commons.io.FilenameUtils
def count=0, i=1, j=1
def inputFileName, outputFileName
def outputFile = new File(testRunner.testCase.testSuite.getPropertyValue("outputFileName"))
// Perform other operations on the file.
//
// End
today = new Date().format("yyyy-MM-dd HH.mm.ss.SSSSS Z")
def fileWithoutExt = FilenameUtils.removeExtension(testRunner.testCase.testSuite.getPropertyValue("outputFileName"))
outputFile.renameTo(new File(fileWithoutExt + "_" + today + ".xls"))
log.info outputFile