0

您好,在 MS-DOS 中输入以下命令后出现以下错误:

    C:\Users\Aline\Desktop\ClassesdoEstudodeCaso\ProjetosSelecionados\xerces-2.10.0\bin\org\apache\xerces\util>java -ea -classpath randoop.jar randoop.main.Main gentests --testclass=ParserConfigurationSettings --timelimit=60

policy = sun.security.provider.PolicyFile@10f87f48
    Error: No class with name "ParserConfigurationSettings" found on the classpath
           This is most likely a problem with the classpath. It may be wrong, or
           it is formatted incorrectly on the command line. The other possibility
           is that the wrong class name is given.
    Exiting Randoop.

并且“C:\Users\Aline\Desktop\ClassesdoEstudodeCaso\ProjetosSelecionados\xerces-2.10.0\bin\org\apache\xerces\util”已经在类路径中

4

3 回答 3

0

如您引用的 Randoop 错误消息中所述,您错误地指定了类路径。

您的命令行包含-classpath randoop.jar. 这个类路径不包含类ParserConfigurationSettings

Randoop 手册的Running Randoop部分所示,类路径需要包含 Randoop 和正在测试的代码。

于 2016-12-29T16:20:20.877 回答
0

我试过命令

java -ea -classpath randoop.jar;C:\Users\Aline\Desktop\ClassesdoEstudodeCaso\ProjetosSelecionados\xerces-2.10.0\bin\org\apache\xerces\util\ randoop.main.Main gentests --testclass=ParserConfigurationSettings --timelimit=10

但它没有用,尝试了一些其他命令,我发现这个有效:

java -ea -classpath randoop.jar;C:\Users\Aline\Desktop\ClassesdoEstudodeCaso\ProjetosSelecionados\xerces-2.10.0\bin\ randoop.main.Main gentests --testclass=org.apache.xerces.util.ParserConfigurationSettings --timelimit=60
于 2016-12-30T01:56:19.057 回答
0

要解决此问题,请执行以下步骤:-

适用于 linux/unix 和 mac-os

您可以将其映射到相应的窗口

  1. 检查JAVA_HOME是否正确指定,如果没有,则执行导出JAVA_HOME=<java home dir>echo $JAVA_HOME 在系统中添加变量PATH

    导出 PATH=$PATH:$JAVA_HOME/bin

  2. 点击链接。下载 Randoop,在您的系统上解压缩。

  3. 设置RANDOOP_PATHRANDOOP_JAR作为环境变量并添加到系统中PATH

    导出 RANDOOP_PATH= 导出 RANDOOP_JAR=$RANDOOP_PATH/randoop-all-.jar 导出 PATH=$RANDOOP_PATH:$RANDOOP_JAR:$PATH

  4. 转到并创建/bin/src/main/java/bin/src/test/java文件夹

  5. 打开终端并执行命令java -ea -classpath $RANDOOP_JAR randoop.main.Main help

预期产出

Randoop for Java 版本。

Randoop 是一个为 Java 创建单元测试的命令行工具。它接受下面列出的命令之一。用户手册请访问https://randoop.github.io/randoop/manual/index.html

键入 `help' 后跟命令名称以查看文档。

命令:

gentests -- 为一组类生成单元测试。

help -- 显示给定命令的帮助消息。

Randoop 设置完成并可以使用。

  1. 如果要在类 XYZ 上执行 Randoop 以生成测试用例,请按照以下步骤操作

6.1XYZ.class是包名为的类文件,然后在 ie下com.demo 创建文件夹并将文件放在这里。/com/demo$RANDOOP_HOME/bin/src/main/java/$RANDOOP_HOME/bin/src/main/java/com/demo/XYZ.class

6.2 现在从终端执行以下命令

java  -ea -classpath $RANDOOP_PATH/bin/src/main/java:$RANDOOP_JAR:$JAVA_HOME/bin randoop.main.Main gentests --testclass=com.demo.XYZ --timelimit=60  --outputlimit=500 --inputlimit=500 --testsperfile=500 --error-test-basename=XYZError --regression-test-basename=XYZRegression --junit-package-name=com.demo --junit-output-dir=$RANDOOP_PATH/bin/src/test/java

6.3 完成 6.2 后转到$RANDOOP_PATH/bin/src/test/java并验证文件是否已创建!!!

6.4 现在您可以使用Junit.jar.

于 2017-09-21T18:04:01.667 回答