0

問題

expect()e2e テストで何かをアサートするために使用したいのですが、 のみでexpect()動作しFutureます。これを機能させるにはどうすればよいですか:

expect(true).toBe(true);

詳細

上記のexpect()呼び出しは、単体テストでは正常に機能しますがexpect()、e2e テストでは別物です。私の状況では、すべてのラジオ ボタンがチェックされていないことを確認する必要があります。コードは次のとおりです。

    //first grab all radios in my DOM
    element('.hhmInHousehold div > input[type="radio"]', 'member status').query(function(radios,doneFn){
            //cycle through each radio to check if it is checked
            angular.forEach(radios, function(radio, key)
            {
                if(radio.checked !== false) {
                    //in my perfect world this if check, then throw 
                    //statement should just be:  expect(radio.checked).toBe(false);
                    throw "expected radio checked to not be checked";
                }

            });

            doneFn();
        });

上記では、洗練されていない if ステートメントを実行してから、例外をスローしています。これを行うより良い方法はありますか?

ありがとう!

4

2 に答える 2

0

フューチャーを入力として使用する簡単な方法はわかりませんが、次のexpectようにして、すべてのチェックボックスが選択されていないことを確認できます。

expect(element('input:checked').count()).toBe(0);

まだご覧になっていない方のために、E2EAPIのドキュメントをご覧ください。

于 2013-03-15T04:18:28.880 に答える
0

要素が非表示になっているかどうかを確認するために、次のことを行うことができました。

expect(element("#id_element").css("display")).toBe("none");    

そして、この要素が表示されているかどうかを確認するには:

expect(element("#id_element").css("display")).not().toBe("none");

これは最善の方法ではないと思います。しかし、それは簡単で、私にとってはうまくいきました。

乾杯!

于 2013-05-16T12:43:15.683 に答える