需要在standalone karate.jar中使用JavaScript检查给定目录的文件夹、文件和文件详细信息

需要在standalone karate.jar中使用JavaScript检查给定目录的文件夹、文件和文件详细信息,javascript,file,directory,karate,filesystemobject,Javascript,File,Directory,Karate,Filesystemobject,我需要在standalone karate.jar中使用JavaScript检查给定目录的文件夹、文件和文件详细信息(文件大小),此验证是测试自动化脚本的一部分 我知道这可以通过在maven中编写定制java包并在空手道脚本的JavaScript中使用它们来实现 如何在独立的karate.jar中实现这一点。将目录路径和目录名作为两个参数传递给JavaScript函数,这些函数验证给定目录名是否存在于提供的目录路径中。它处理文件系统对象的类型 我知道空手道只支持读取文件,而不支持读取目录中的文件

我需要在standalone karate.jar中使用JavaScript检查给定目录的文件夹、文件和文件详细信息(文件大小),此验证是测试自动化脚本的一部分

我知道这可以通过在maven中编写定制java包并在空手道脚本的JavaScript中使用它们来实现

如何在独立的karate.jar中实现这一点。将目录路径和目录名作为两个参数传递给JavaScript函数,这些函数验证给定目录名是否存在于提供的目录路径中。它处理文件系统对象的类型

我知道空手道只支持读取文件,而不支持读取目录中的文件夹名和文件名/文件详细信息。 以空手道脚本读取文件: 允许的文件扩展名为:.json、.xml、.yaml、.csv、.txt、.feature

请指导我如何在空手道中使用Javascript实现这一点

谢谢
钱德拉。

是的,使用独立的罐子更难。以下是一些建议:

  • 编写一个小JAR文件(一次性),可以将其包含在独立项目中:
  • 通过
    karate.exec()
    使用操作系统命令,例如在windows上
    *def homePath=karate.exec('cmd/c echo%homePath%”)
  • 通过一些工作,您可以创建使用JVM库的纯JS脚本,但是您需要对Java中存在的内容有很好的理解,并且这些脚本很难调试,因此我不推荐这种方法。下面我举一个例子:

*def findFile=
"""
函数(文件、条件){
var root=newjava.io.File(文件);
函数递归(文件){
var list=file.listFiles();
对于(变量i=0;i
感谢您的快速回复。我根据自己的需求生成了JAR文件,并将其包含在独立项目中:现在可以正常工作了。还感谢您分享实习生使用JVM库的纯JS代码脚本的示例代码。@ChandramohanRamabadran很棒