ArquillianでJSFをテストしています。
シンプルなボタンは次のようになります。
<h:form id="myForm">
<a4j:commandLink value="delete"
ajaxSingle="true" id="delete"
action="#{controller.delete(object)}"
reRender="something" status="globalStatus"
onclick="if(!confirm('do you really wanna delete this?')){return false;}" />
</h:form>
コントローラ機能は次のようになります
delete(Object object){
do something
}
私のテストはこのように見えます
@RunWith(Arquillian.class)
public class TestCategoryPage extends Browser
@Test
@RunAsClient
public void delete_test(){
browser.open(URL);
browser.click("id=myForm:cbDelete");
Assert.assertTrue("something", browser.isElementPresent("xpath=//p[contains(text(), 'deleted successfull')]"));
他のすべてのテストは機能していますが、このテストを実行すると、次の例外が発生します。
com.thoughtworks.selenium.SeleniumException:エラー:予期しない確認がありました![本当にこれを削除しますか?] com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:112)
このJavaScriptの確認をキャッチする方法はありますか?ありがとう!