Javascript 使用jasmine插件测试angularJS应用程序失败

Javascript 使用jasmine插件测试angularJS应用程序失败,javascript,angularjs,jasmine,karma-jasmine,Javascript,Angularjs,Jasmine,Karma Jasmine,我正在学习为angularJS应用程序编写测试用例。作为一个新手,试着找到一些工作示例演示。 我在网上找到的下面的例子是使用Jasmine插件测试angularJS应用程序,但该应用程序似乎不起作用 {{vm.message} + 做吧 {{vm.result} 有棱角的 .module('testingApp',[]) .控制器(“计算器控制器”,计算器控制器); 函数计算器控制器(){ var vm=这个; vm.message='我是一个简单的计算器'; vm.result=0; vm

我正在学习为angularJS应用程序编写测试用例。作为一个新手,试着找到一些工作示例演示。 我在网上找到的下面的例子是使用Jasmine插件测试angularJS应用程序,但该应用程序似乎不起作用


{{vm.message}
+
做吧
{{vm.result}
有棱角的
.module('testingApp',[])
.控制器(“计算器控制器”,计算器控制器);
函数计算器控制器(){
var vm=这个;
vm.message='我是一个简单的计算器';
vm.result=0;
vm.firstNumber=0;
vm.secondNumber=0;
vm.addNumber=addNumber;
函数addNumber(){
vm.result=vm.firstNumber+vm.secondNumber;
}
};
描述(“单元:计算器控制器测试”,函数(){
//用于测试此单元的设置代码
无功控制器;
beforeach(函数(){
模块(“testingApp”);
注入(函数($controller){
控制器=$controller('calculatorController');
});
});
它(“通过测试-应该能够显示标题”,函数(){
expect(controller.message).toBe('我是一个简单的计算器');
});
它(“测试失败-应该能够显示标题”,函数(){
expect(controller.message).toBe('fail');
});
它(“通过测试-应加2+2并得到4的结果”,函数(){
controller.firstNumber=2;
controller.secondNumber=2;
controller.result=0;
controller.addNumber()
期望(控制员。结果)。toEqual(4);
});
});
任何让这个例子起作用的建议都会非常有用。
另外,请推荐任何使用jasmine、karma或angularJS应用程序的任何测试插件的好例子链接。

下面是导致失败的测试用例

 it("FAILING TEST - should be able to display a title", function() {
              expect(controller.message).toBe('fail fail fail');
 });
这个测试用例应该是这样的,因为您想要测试负用例

it("FAILING TEST - should be able to display a title", function() {
          expect(controller.message).not.toBe('fail fail fail');
});
如果希望通过测试用例而不进行否定测试,请使用
.not.toBe

controller.message='fail fail fail';
    it("FAILING TEST - should be able to display a title", function() {

                     expect(controller.message).toBe('fail fail fail');
         });

谢谢。在plunker中,testcase it(“通过测试-应加2+2并得到4的结果”),函数(){..没有被执行。该测试用例是否有任何问题,当我在文本框中输入值并单击“执行”时,它也没有执行测试用例..抱歉,如果我错了,请更正我。当我键入一些数字并单击plunker中的“执行”按钮时,什么都没有发生。如何测试下面的测试用例场景?它(“通过测试-应加2+2并得到4的结果”,函数(){..@javaUser您正在测试无法测试实时数据的应用程序。您在嘲弄它。如果您有这样的要求,请使用量角器端到端测试。这种方法不可能。哦,好的,明白了。谢谢。我想用jasmine或karma我们也可以测试实时数据。所以如果我错了,请纠正我,如果我们使用jasmine或karma插件在测试angularJS应用程序时,我们可以模拟数据和测试,但不能测试实时数据,对吗?感谢分享知识。它帮助了我。
controller.message='fail fail fail';
    it("FAILING TEST - should be able to display a title", function() {

                     expect(controller.message).toBe('fail fail fail');
         });