我正在使用 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{
}
期望当我将光标移到“侦听器”上时,我应该得到“添加未实现的方法”选项。
右键单击(在 Listeners 类上)-> 转到源代码-> 单击覆盖/实现方法 -> 选中 ITest 侦听器的复选框(确保应选中其中的所有复选框)-> 单击“确定”。就是这样!!!
我从下面的链接了解到 - TestNG 7.0.0 使用 JDK8 及其接口内的默认方法。这意味着每个侦听器现在对于接口中定义的所有方法都有一个默认实现(不执行任何操作)。
所以现在您将不会从 IDE 中看到这些指示。接口中默认方法的最大好处是,假设您正在实现一个定义了 10 个方法的接口,您可以只实现您需要的任何内容,其余行为通过接口中的默认方法来实现。 参考- https://github.com/cbeust/testng/issues/1964
右键单击该类 --> 选择源 --> 选择覆盖/实现方法 --> 然后选择您想要实现的方法。
从7版本开始,ITestListener接口中的所有方法都改为默认方法。您可以使用实现接口的类对象来调用它们。
尝试将 TestNg 版本降级至 6.14.3。 这对我有用。
最好的解决方案是转到“文件编辑”选项旁边的源选项卡,然后单击“覆盖/实现方法”,然后就可以了
将鼠标悬停在类名称上时,Eclipse 似乎可能不会显示“添加未实现的方法”错误。但是,您仍然可以按照以下步骤生成未实现的方法:
这样,即使 IDE 在将鼠标悬停在类名称上时未显示错误,您也可以手动生成未实现的方法。