问题标签 [evosuite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
96 浏览

java - 仅对新的/修改的代码生成测试

考虑到 Maven 的工作方式,也许很明显,但我对此有点陌生。
我目前正在通过 maven 使用 evosuite 来生成测试,我的问题是:

是否可以只为新的/修改的代码生成测试而不是生成整个套装?

0 投票
1 回答
285 浏览

java - 使用 Maven 时如何传递 EvoSuite 参数?

使用 Evosuite 生成测试用例时,我们可以传递多个参数,例如:

通常,这些参数仅由 传递-D<param>=<value>。但是对于我的项目,我使用的是 Maven,而不是从命令行调用 Evosuite 直接。

我试过mvn -D<param>=<value>了,但它似乎不起作用。关于如何做到这一点的任何想法?

0 投票
0 回答
880 浏览

java - Evosuite(maven)无法生成测试/编辑:尝试了eclipse插件

在此处输入图像描述

我正在使用 Eclipse Luna 中的 Maven 插件,使用 JDK 1.8 测试 evosuite(生成 junit 测试的自动化工具)

我遵循了 evosuite 教程中给出的教程:http ://www.evosuite.org/documentation/tutorial-part-2/

能够使用 evosuite 提供的教程文件生成测试,但是当我在我正在从事的项目之一上尝试它时,当我在 cmd 中启动 mvn evosuite:generate 时它无法生成测试。

了解我首先需要进行 mvn 编译,它实际上在文件夹“target\classes”中生成所有 .class 文件,我实际上检查了物理文件确实存在于文件夹“Classes”中。文件夹结构与文件夹“src\main\java”中的完全相同。

当我启动 "mvn evosuite:generate" 时,它实际上开始生成,它显示:

[INFO] 从 /127.0.0.1:58449 注册的远程进程
[INFO] 将执行 139 个作业
[INFO] 预计完成时间:278 分钟,截至 2018-04-22T05:33:27.051
[INFO] 开始作业: “Java 文件”。预计将在 1158 秒内结束,
到 2018-04-22T01:14:45.848

它一直持续到最后一个 java 文件,显示如下:

[INFO] * 将数据库更新为“java 文件名”

然后是这样的:

=== CTG 运行结果 ===
[INFO] 已删除测试套件:0
[INFO] 新测试套件:0
[INFO] 缺少类:
[INFO]“Java 文件名”

并以此声明结束

[INFO] WARN:无法为 139 个类中的 139 个生成测试
[INFO] 停止生成进程管理器
[INFO] ------------------------- --------------------------------------------------------
[信息] 构建成功
[信息]------------------------------------------------ ---------------------
[INFO] 总时间:52:44 min
[INFO] 完成时间:2018-04-22T01:47:02+08:00
[信息] --------------------------------------------- ----------------------

我想知道我是否错过了任何步骤?因为使用相同的步骤,我可以使用 evosuite 提供的 tutorial_maven 生成测试用例。

或者这是由于evosuite无法处理和生成单元测试的项目和java文件的复杂性?

请指教!谢谢!我尝试了许多不同的方法,mvn clean install 反复,但无济于事。

编辑:也为 evosuite 尝试了 eclipse 插件:得到了同样的错误,说找不到 test.java 文件,这很奇怪。插件不应该生成测试文件吗?

0 投票
1 回答
70 浏览

evosuite - EvoSuite 无法连接到服务器

我按照 evosuite 官方教程 ( http://www.evosuite.org/documentation/tutorial-part-1/ ) 的确切步骤进行操作,而我总是得到的是: IMAGE

它总是说“注册客户端服务失败”,然后由于连接失败而引发了java异常。我的设备已完美连接到互联网。我尝试 ping 连接站点并且有回复。我应该怎么办?

0 投票
1 回答
370 浏览

java - 运行与安全管理器相关的 EvoSuite 测试时出现异常

我正在尝试使用本教程运行 EvoSuite 测试。

我能够生成测试类并使用 java 8 编译它们。但是,当尝试使用以下命令运行它时,会引发异常。

抛出异常:

有人可以帮助/指导我解决这个问题吗?提前致谢。

附加信息:

测试类是一个单例,它使用 JDBC API 连接到数据库以检索某些值。

0 投票
1 回答
657 浏览

java - 如何通过 EvoSuite 生成失败的测试用例?

在学习使用 Evosuite 的时候,我写了一些错误的方法。例如其中一个类的方法A直接调用 interface 的抽象方法B,EvoSuite 生成一个 mockB来避免 case 失败:

对于可能发生被零除的方法,EvoSuite 生成的测试用例甚至会捕获异常以确保测试用例通过:

EvoSuite 自动生成的测试用例是否总是通过,就像这些示例一样?如何让 EvoSuite 生成可能失败的测试用例,从而让开发人员直接使用?

0 投票
0 回答
889 浏览

classpath - 如何指定 Evosuite 依赖项

当您想使用 Evosuite 为 java 项目生成测试时,您必须指定:

  1. 被测班级

  2. 您可以在其中找到被测类的字节码及其依赖项的类路径

所以我在命令提示符下给出以下内容:

$EVOSUITE代表java -jar evosuite.jar

com.lightbend.akka.sample代表我有四个要测试的类的包。

target/classes是我的所有类都在测试字节码下的文件夹。

target/dependency是我将依赖项作为 jar 包的文件夹。

在被测试的四个类中,一个没有依赖关系。它是堆栈弹出和推送的简单实现。如果我在com.lightbend.akka.sampleEvosuite 自动生成的此类的测试套件中只有此类。

其他三个类是使用 AKKA 的实现,因此在内部的其他 jar 中依赖 Akka jar target/dependency。对于这些测试,生成失败,因为 Evosuite 找不到类:Error while initializing target class: Class not found: akka/actor/ActorRef:

我究竟做错了什么?如何使用 Evosuite 为具有外部依赖关系的多个类生成测试?

以下是发出上述命令后的完整错误:

0 投票
1 回答
1230 浏览

java - ERROR EvoSuite - EvoSuite 主进程发生致命崩溃

尝试运行 EvoSuite 时出现以下错误。我什至提供了 jdk 的完整路径,但仍然没有解决错误。请帮帮我。

0 投票
1 回答
896 浏览

java - EvoSuite 没有生成任何测试

我在 IntelliJ 中安装了用于自动生成 JUnit 测试的“EvoSuite”插件,并尝试了一些示例代码/项目。这些项目都不会让 EvoSuite 生成任何测试。

仅生成带有空正文的默认测试。是这样吗?或者我在这里错过了什么?

任何帮助表示赞赏。也许来自已经在使用 EvoSuite 的人?

顺便说一句,我收到以下错误日志:

0 投票
0 回答
126 浏览

oracle - 如何解决 Evosuite 生成的测试中的 oracle jdbc 代理类错误?

我已经编写了一个 JDBC 驱动程序,并且正在尝试使用 Evosuite 为其生成测试。我正在使用以下命令行:

生成的代码如下:

我在第一行收到以下错误: :[4618,7] not a statement :[4618,13] ';' 预期(在同一行出现此错误三次)

我希望关闭嘲笑,但它似乎没有用。

我会尝试稍后提供更多详细信息,但是任何人的初步想法?

谢谢!