[javac] U:\dms-webui-testing\test-java\dmswebui\CR\TestLogin.java:16: until() in cannot override until() in com.thoughtworks.selenium.Wait; attempting to assign weaker access privileges; was public
I am getting above error for a fairly simple code:
package dmswebui.CR;
import org.infineta.webui.selenium4j.MainTestCase;
public class TestLogin extends MainTestCase {
@Override
public void setUp() throws Exception {
super.setUp();
startSeleniumSession("ChromeDriver", "somesite");
}
public void testMethod() throws Exception {
new Wait("") {boolean until() {return false;}};session().open("/");
new Wait("") {boolean until() {return false;}};session().click("id=btnLogin-button"); session().waitForPageToLoad("30000");
for (int second = 0;; second++) {
if (second >= 60) fail("timeout 'waitForTextPresent:Logoff' ");
try { if (session().isTextPresent("Logoff")) break; } catch (Exception e) {}
Thread.sleep(1000);
}
new Wait("") {boolean until() {return false;}};session().click("id=btnUserLogout-button");
new Wait("") {boolean until() {return false;}};session().click("id=yui-gen0-button"); session().waitForPageToLoad("30000");
}
public void tearDown() throws Exception {
super.tearDown();
closeSeleniumSession();
}
}
here is how I use Wait class. Please help me to understand this error.
The lines with the problem are the two below
You try to override the
untilmethod which haspublicaccess in thecom.thoughtworks.selenium.Waitclass by auntilmethod which is only package visible.You cannot override a method and reduce visibility. You can only increase the visibility (e.g. overriding a
protectedmethod and making itpublic)So the fix would be to add the
publickeyword to these methods