如何在AngularJS中的HTML文件中测试单击事件



我在我的应用中定义了此路线。

$stateProvider.state('Details', {
    url: '/c/:cId/cDetails/:cDId',
    templateUrl: 'cData/Details.html',
    controller: 'DetailsCtrl',
    controllerAs: 'ctrl',        
    resolve: {
      Fields: function ($stateParams,DataFactory) {
        return DataFactory.getFields(keys);
      }
    }
  });

这是html的详细信息。html

<div id="Details" ng-cloak >
<button open-dialog click="ctrl.onClose()"></button>
</div>
<directive-form></directive-form>

我想编写单元测试,以检查对话框是否打开按钮,如果表格很肮脏。该表格由指令指令形式创建。

我想为此,我需要编译详细信息。html。我对吗?

我不确定如何编译详细信息。html文件并调用onclick方法。这可能吗?

这是不可测试的代码。

为了使其可测试,请将OpenDialogIfFormIsDirty()方法移至详细信息中的方法。然后删除onclick属性,然后用ng-click="ctrl.openDialogIfFormIsDirty()"替换。

这只是第一步。现在,在您的原始问题中发布一些详细信息的代码和opendialogifmisdirty()方法,我们可以看到如何使其可测试。

最新更新