【问题标题】:Not getting "Add unimplemented methods" error in eclipse在 Eclipse 中未收到“添加未实现的方法”错误
【发布时间】:2020-01-16 03:37:37
【问题描述】:

我正在使用 Java 开发 Selenium 并使用侦听器。

我创建了类,导入了TestNG,然后添加方法为;

Public class Listener implements ITestListener{
}

我在“ITestListner”中遇到错误,然后导入了“ITestListner(org.testng)。在此之后,我预计会在“Listener”中收到错误,但我没有收到任何错误。

我尝试使用抽象类创建,但仍然没有收到错误。

package com.testng;

import org.testng.ITestListener;

public class Listeners implements ITestListener{

}

期望当我将光标移到“侦听器”上时,我应该得到“添加未实现的方法”选项。

【问题讨论】:

  • 定义的包中是否有 ITestListener.java 文件?
  • 不,我的类名是Listeners,我用ITestListener来实现Listener方法。
  • 在 ITestListener 类中有哪些可用的方法。我假设 ITestListener 是一个接口。
  • 是的,它是一个接口。如果我得到“添加未实现的方法”选项,下面的代码将被暴露。
  • 贴出 ITestListener.java 的代码

标签: java eclipse selenium testng listener


【解决方案1】:

右键单击(在侦听器类上)-> 转到源代码-> 单击覆盖/实现方法-> 选中 ITest 侦听器的复选框(确保应选中其中的所有复选框)-> 单击好的。就是这样!!!

【讨论】:

    【解决方案2】:

    正如我从下面的链接中了解到的 - TestNG 7.0.0 使用 JDK8 以及接口中的默认方法。这意味着每个侦听器现在对于接口中定义的所有方法都有一个默认实现(它不做任何事情)。

    所以现在您不会从 IDE 中看到这些指示。接口中默认方法的最大好处是,假设您正在实现一个定义了 10 个方法的接口,您可以只实现您需要的任何东西,其余的行为来自接口中的默认方法。 参考- https://github.com/cbeust/testng/issues/1964

    【讨论】:

    【解决方案3】:

    右键单击类 --> 选择源 --> 选择覆盖/实现方法 --> 然后选择您要实现的方法。

    【讨论】:

      【解决方案4】:

      尝试将 TestNg 版本降级到 6.14.3。 它对我有用。

      【讨论】:

        【解决方案5】:

        最好的解决方案是转到文件编辑选项旁边的源选项卡,然后单击覆盖/实现方法,然后您就设置好了

        【讨论】:

          【解决方案6】:

          ITestListener 接口中的所有方法从 7 版本开始更改为默认值。您可以使用实现接口的类对象来调用它们。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-03-31
            • 2014-08-04
            • 2011-02-05
            • 1970-01-01
            • 2011-09-28
            • 2019-09-25
            • 2017-10-09
            • 1970-01-01
            相关资源
            最近更新 更多