Mocha Karma角度测试无法访问互联网

时间:2019-02-07 16:28:50

标签: angularjs mocha karma-runner

我需要访问正在编写的测试的url,但是它失败

  

“超时超过2000毫秒。对于异步测试和挂钩,请确保   “ done()”称为“

经过各种实验,我无法使它正常工作,并且我怀疑测试无法到达互联网。

示例代码:

it('should be able to access the internet', function(done) {
        inject(function($http) {
            expect($http).to.exist; //this line passes the test

            $http({
                method: 'GET',
                url: 'http://example.com'
            }).success(function (data) {
                console.log(data);
                expect(true).to.be.true;
                done();
            }).error(function () {
                expect(false).to.be.true;
                done();
            });
}});

将超时增加到任何程度都无济于事,并且我正在运行测试的计算机可以访问互联网。

我也用普通的XmlHttpRequest而不是angular的$ http尝试过,它也失败了:

it('should be able to access the internet', function(done) {
    inject(function($http) {
    expect($http).to.exist;

    function reqListener () {
        console.log(this.responseText);
        expect(true).to.be.true;
        done();
    }

    function errListener() {
        console.log(this.responseText);
        expect(false).to.be.true;
        done();
    }

    var oReq = new XMLHttpRequest();
    oReq.addEventListener("load", reqListener);
    oReq.addEventListener("error", errListener);
    oReq.open("GET", "http://www.example.org/example.txt");
    oReq.send();
}});

0 个答案:

没有答案