Примечание: поддерживается только последняя версия
Когда ITestListener или любой другой слушатель будет реализован, eclipse должен показать опцию добавления нереализованных методов, при нажатии на опцию все методы интерфейса должны включать класс
Это не работает, как ожидалось
пакет com.freecrm.ExtentReportListener;
import org.testng.ITestListener;
открытый класс MyListener реализует ITestListener {
}
@ sen1983 - TestNG 7.0.0 использует JDK8 и методы по умолчанию в интерфейсах. Это означает, что каждый слушатель теперь будет иметь реализацию по умолчанию (которая ничего не делает) для всех методов, определенных в интерфейсе.
Так что теперь вы не увидите этих указаний в среде IDE. Самым большим преимуществом методов по умолчанию в интерфейсах является то, что, допустим, вы реализуете интерфейс, в котором определены 10 методов, вы можете просто реализовать все, что вам нужно, а остальная часть поведения реализуется через методы по умолчанию в интерфейсе.
@krmahadevan - Спасибо за ответ, добавив к нему дополнительную информацию.
Если вы не можете добавить нереализованные методы, начните писать код, но не добавляйте «@override».
@sagaramritkar - Не уверен, что вы имеете в виду и что пытались объяснить. Не хотите еще раз объяснить?
@sagaramritkar Согласен с вашим утверждением, когда я добавляю метод по умолчанию
[default void onTestFailure (результат ITestResult) {
// не реализована
}]
с "@override" это дает мне ошибку с быстрым исправлением -> "Удалить аннотацию @Override "
@krmahadevan Пожалуйста, подтвердите
Эта проблема принадлежит TestNG 7.1.0. попробуй настроить TestNG 6.14.3. Выпуск воспроизводить не буду.
это проблема или изменение?
@ prernabhandari2427 - Не
Эта проблема принадлежит TestNG 7.1.0. попробуй настроить TestNG 6.14.3. Выпуск воспроизводить не буду.
Спасибо, это работает
Самый полезный комментарий
@ sen1983 - TestNG 7.0.0 использует JDK8 и методы по умолчанию в интерфейсах. Это означает, что каждый слушатель теперь будет иметь реализацию по умолчанию (которая ничего не делает) для всех методов, определенных в интерфейсе.
Так что теперь вы не увидите этих указаний в среде IDE. Самым большим преимуществом методов по умолчанию в интерфейсах является то, что, допустим, вы реализуете интерфейс, в котором определены 10 методов, вы можете просто реализовать все, что вам нужно, а остальная часть поведения реализуется через методы по умолчанию в интерфейсе.