当前位置: 首页 > 知识库问答 >
问题:

cucumber台阶试验中的嘲笑对象?“JMockit未正确初始化”错误

许博易
2023-03-14
@RunWith(JMockit.class)
public class UnitTestClass{
    @Mocked
    AClass mockedObject;

    @Test
    public void AMethodTest() {
        try {
            new NonStrictExpectations() {
                {
                    ExampleObject.callAMethod();
                    result = mockedObject;
                }
            };
                     Assert.assertEquals(xxxxx);
                catch(Exception e){
                }  
}
@RunWith(Cucumber.class)
@CucumberOptions (features = "src/test/java/feature/")
//@RunWith(JMockit.class)
public class UnitTestClass{
}


@RunWith(JMockit.class)
public class UnitTestClassSteps{

    @Given("^an input data id: '(\\d+)'\\.$")
    @Test
    public void a_data_ID(int arg1) throws Throwable {

            try {
                **new NonStrictExpectations() {**
                    {
                        ExampleObject.callAMethod();
                        result = mockedObject;
                    }
                };
                    Assert.assertEquals(xxxxx);
               catch(Exception e){
               } 
   }

共有1个答案

湛铭
2023-03-14

我一直在使用cucumber-java 1.2.5JMockit 1.3.0,效果很好。没有黑客,没有诡计,没有任何复杂的设置。

唯一发生的事情是jMockit本身抱怨在其他库之前被声明,我认为是JUnit。它发生在几天前,并且在pom文件中很容易修复,所以我并不太在意。

测试运行程序正在使用@runwith(cucumber.class),我只需要在实例化使用“真正的”的类之前实例化这些模拟,即常规的jMockit用例。

 类似资料:
  • 我们尝试使用Gherkin/Cucumber进行单元测试。在maven项目中,我们曾经使用JUnit/JMockit执行以下格式的单元测试,并且工作得很好。 旧的Junit测试类曾经工作过: 在开始使用Gherkin/Cucumber之后,我们正在用以下两个类编写单元类:

  • 问题内容: 我在用Java工作。 我通常会这样设置一些对象: 问题是:在此示例中是否等于,按原样我可以假定对未初始化的对象进行空检查将是准确的? 问题答案: 正确,未显式初始化的引用类型的静态成员和实例成员都由Java 设置为。相同的规则适用于数组成员。 根据Java语言规范的第4.12.5节: 变量的初始值 程序中的每个变量在使用值之前都必须具有一个值: 每个类变量,实例变量或数组组件在创建时均

  • 问题内容: 我正在设置用于学习JavaEE7中CDI的基本环境。我有以下代码可以启动。只是启动和关闭。 我正在控制台上关注。 有问题的线是。这仅表示依赖注入将不起作用。但是我不确定是什么问题。我已经添加了。我什至没有达到初始化对象的目的,那为什么会出现这个问题呢? Weld的官方文档还给出了阅读此答案后得到的相同代码。“ Antonio Goncalves”撰写的“ Beginning Java

  • 我们的项目中有一个不可替代代币状态和不可替代代币合约的自定义实现。我们正在使用下面的代码来发行我们的自定义不可替代代币。 当试图将上面获得的事务构建器转换为有线事务时(< code > builder . towiretransaction(service hub);)我们在下面的堆栈跟踪中得到一个错误。

  • 我正在尝试使用来启动zk/kafka。 zookeeper-1 _ 1 |[2022-01-17 12:30:34,845]信息绑定到端口0 . 0 . 0 . 0/0 . 0 . 0:2181 (org.apache.zookeeper . server . nettyservercnxnfactory)< br > zookeeper-1 _ 1 |[2022-01-17 12:30:34,8

  • 我目前正在做一个小项目,作为Java测试课程的实习,我们试图看看mocking是如何工作的。 我们的目标是看到我们可以忽略我们所嘲笑的类中的错误。 正如您在Collaborateur中看到的,缺少一个“;”在System.Out之后,exercice的目标是表明嘲笑这个类可以让我们忽略这个错误。我的一些同事使用Eclipse时,使用“以JUnit形式运行”功能没有问题。 在Intellij中,我没