Javascript承诺在控制台中抛出未捕获(在承诺中)-1

Javascript承诺在控制台中抛出未捕获(在承诺中)-1,javascript,jasmine,promise,Javascript,Jasmine,Promise,我使用Jasmine 2.3.4为native Promise编写了一个测试用例。 我所有的测试都通过了,但如果我看一下浏览器控制台,我会看到“Uncaught(in promise)-1”。下面的链接包含我的测试代码,如果您查看控制台,您将看到错误 如何修复此错误。 谢谢。在您的前两个测试中,创建并拒绝了一个promiseReject,但是没有人发现错误。这就是所谓的“未经处理的拒绝”。这不是一个错误,而是一个警告-忽略它,或者抓住它。@Surya你可以测试Bergi的建议,将第一个It放入

我使用Jasmine 2.3.4为native Promise编写了一个测试用例。 我所有的测试都通过了,但如果我看一下浏览器控制台,我会看到“Uncaught(in promise)-1”。下面的链接包含我的测试代码,如果您查看控制台,您将看到错误

如何修复此错误。
谢谢。

在您的前两个测试中,创建并拒绝了一个
promiseReject
,但是没有人发现错误。这就是所谓的“未经处理的拒绝”。这不是一个错误,而是一个警告-忽略它,或者抓住它。@Surya你可以测试Bergi的建议,将第一个
It
放入
xit
中,这样它就被排除了,看看你是否仍然得到了答案warning@Bergi对不起,我不明白?您的意思是将我的拒绝承诺包含在try-catch中吗?不,只需像在您的第三个测试用例中一样在其上放置一个
.catch(…)
。@JuanMendes添加xit时,我仍然会收到错误。我的第三个测试用例也显示了未捕获(在promise中)。我在控制台中总共看到两个错误
describe("Promise working", function() {

          var promiseResolve = null,
              promiseReject = null;

          beforeEach(function(done) {

              promiseResolve = new Promise(function(resolve,reject){
                                  resolve(1);
                              });

             promiseReject = new Promise(function(resolve,reject){
                                 reject(-1); //causing error in console????Uncaught (in promise) -1
                               });
              done();
          });

          it("Promise is defined", function(done) {
              //console.log('Promise',promiseResolve,promiseReject);
              expect(promiseResolve).toBeDefined();
              expect(promiseReject).toBeDefined();
              done();
          });

          it("Promise is resolving properly", function(done) {
              promiseResolve.then(function(val){//success
                  expect(val).toEqual(1);
                  done();
              }).catch(function(val){
                    fail('Promise resolving should not run');
                    done();
              });
          });

         it("Promise is rejecting properly", function(done) {
             promiseReject.then(function(val){
               fail('Promise rejecting should not run');
             }).catch(function(val){
                   expect(val).toEqual(-1);
                   done();
             });
         });
      });