如何检查元素在AngularJS模板上是否可见?

时间:2015-11-24 10:37:15

标签: javascript angularjs jasmine bdd karma-jasmine

我有一个与之关联的AngularJS控制器和HTML模板。我有一个" Save"模板中的按钮。我想用Jasmine编写一个测试来检查按钮在某些条件下是否可见。

对于指令我测试了这些东西没有任何问题。但这不是指令。

如果没有指令但只有控制器和HTML模板视图,如何测试这种情况?

1 个答案:

答案 0 :(得分:2)

如果不是指令,你应该只能用控制器来测试它(它应该有一个控制状态的变量)。

如果您需要测试模板,建议您做的是为该功能创建一个指令,然后编写测试。

编辑:另一种选择是使用ng-include为模板和控制器的ng-controller模拟指令,然后使用$ compile服务对其进行编译。查找测试指令的示例并替换ng-include和ng-controller之间混合的指令,您将能够对其进行测试。

Angular docs modified的示例。

    apply_filters( 'woocommerce_get_country_locale', array(
               'HK' => array(
                'postcode' => array(
                  'required' => false
                ),
                'city'  => array(
                'label'       => __( 'Town / District', 'woocommerce' ),
                //'placeholder' => __( 'Town / District', 'woocommerce' )
                )
                'state' => array(
                  'required' => false
                )
            )
        ));

另外,你不知道从手机编写代码有多困难哈哈