【问题标题】:How statement is covered in Karma?业力如何涵盖声明?
【发布时间】:2015-10-27 01:18:39
【问题描述】:

我正在使用业力工具进行测试。我无法涵盖 foreach 语句中的代码。请让我知道如何使用 jasmine 测试用例覆盖此代码。

为此,我在 jasmine 中写了下面的套件。

 describe('Employee test', function () {
    beforeEach(() => {
        module('app');
        inject((_$controller_: ng.IControllerService, _$httpBackend_: ng.IHttpBackendService, $http: ng.IHttpService) => {

                httpB = _$httpBackend_;
                http = $http;
                empService = new EmployeeService($http);

                ctrl = $controller("employeeCtrl", { $scope: $scope, empService });
        });
    it("controller constructor",() => {
                empService.testdata = [];
                var ctrlObj = new employeeCtrlClass($scope, empService);
        });
     });

在这里,我正在创建employeeCtrlClass 对象,以便间接调用函数的构造函数。但它不能调用 foreach 语句。

【问题讨论】:

  • 没有测试数据,你期望如何遍历它的属性?

标签: angularjs unit-testing jasmine karma-jasmine


【解决方案1】:

将一些数据放入testdata数组中:

empService.testdata = [
    {
        empId: 1,
        empData: {}
    }
];

【讨论】:

  • 我已经尝试过了,但它不起作用。它仍然显示为未覆盖。
猜你喜欢
  • 2020-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-27
  • 2019-02-08
  • 2017-01-07
  • 2014-08-17
  • 2021-05-14
相关资源
最近更新 更多