[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
私はかなり単純なコードでエラーを超えています:
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();
}
}
ここ は、待機クラスの使用方法です。このエラーを理解するのを手伝ってください。
問題のある行は以下の2つです。
new Wait("") {boolean until() {return false;}};session().open("/");
new Wait("") {boolean until() {return false;}};session().click("id=btnLogin-button");
com.thoughtworks.Selenium.Wait
クラスでuntil
アクセス権を持つpublic
メソッドを、パッケージのみが表示されるuntil
メソッドによってオーバーライドしようとしています。
メソッドをオーバーライドして可視性を低下させることはできません。表示のみを増やすことができます(たとえば、protected
メソッドをオーバーライドしてpublic
にする)
したがって、修正はこれらのメソッドにpublic
キーワードを追加することです
new Wait("") {public boolean until() {return false;}};session().open("/");
new Wait("") {public boolean until() {return false;}};session().click("id=btnLogin-button");