ATFでリスクアセスメントを検証する方法について

d-aizawa
Kilo Sage

コミュニティの皆様

いつもお世話になっております。

リスクアセスメントについて、ATFで検証しようと考えておりますが、

どのようなTest Stepであれば、検証することが可能でしょうか。

検証内容としては、以下スクリーンショットの状態で「Submit」ボタンを選択したいです。

また私の客先インスタンスでは、[Component Click(Custom UI)」が(なぜか。。)うまく動作しないので、

できればそれ以外のTest Stepでうまく動作できたらと考えております。

 

daizawa_0-1677575836748.png

 

1 REPLY 1

iwai
Giga Sage

こちらで検証してみた結果、ATFで Risk Assessment の Submit ボタンをクリックするStepをComponent Click(Custom UI) で実行して、正しくクリックして動作しました。 うまく行かないのは別の問題がありそうです。

どうしてもComponent Click(Custom UI) を使わない方法が必要であれば、

例えばUI ActionのClientScriptで、Risk Assessment の Submit ボタンをクリック動作をさせることができます。

ATFのステップとしては、

先にボタンクリック用のUI Actionを起動。

次にRisk Assessment の UI Actionを起動。

この順番です。

ボタンクリック用UIActionをATFの中で作成することも出来ます。StepのRecord Insertを使って作成できます。

ボタンクリック用のUI Actionは以下のようなClient Scriptになります。HTML構造が違うようでしたらそれぞれ探すElementを書き換えてください。

function onTestClientScript() {
    function submitButtonClick() {
        if (typeof globalThis != 'undefined' && typeof globalThis.document != 'undefined') {
            // Risk Assessment を探す
            var changeRiskAsmt = globalThis.document.querySelectorAll('div[id^="change_risk_asmt_"]');
            if (changeRiskAsmt.length > 0 && changeRiskAsmt[0].innerText.length > 0 && changeRiskAsmt[0].innerText.indexOf('Loading') == -1) {
                // Risk Assessment 内部の コンテンツを探す
                var iframes = globalThis.document.querySelectorAll('iframe');
                if (iframes.length > 0 && iframes[0].contentDocument) {
                    // Risk Assessment の Submit ボタンを探す
                    var submitButton = iframes[0].contentDocument.querySelector("#submit_sign");
                    if (submitButton && submitButton.offsetWidth > 0 && submitButton.offsetHeight > 0 && !submitButton.disabled) {
                        // Risk Assessment の Submit ボタンを押す
                        submitButton.click();
                        return;
                    }
                }
            }
            // 見つからない場合は 2秒後に再確認
            setTimeout(submitButtonClick, 2000);
        }
    }
    // UI Action から Risk Assessment の Submit ボタンをクリックする処理
    setTimeout(submitButtonClick, 5000);
}