我编写了一个函数来检查两个字符串是否是彼此的字谜。然后,我使用 jasmine 为该函数编写了测试用例。我的 checkAnagram 函数出现问题,导致我的 jasmine 测试失败。
接下来怎么办?如何仅使用 jasmine 来调试我的函数?
var anagrams = {
checkAnagram : function(string1, string2) {
var that = this;
var count1 = that.countLetters(string1);
var count2 = that.countLetters(string2);
var anagram = true;
for(var i in count1) {
if(count2[i] && count1[i]==count2[i]) {
anagram = true;
} else {
anagram = false;
}
}
return anagram;
},
countLetters : function(str) {
var obj = {};
for(var char in str) {
if(!obj[char]) {
obj[char]=1;
} else {
obj[char]++;
}
}
return obj;
}
}
describe("Checks if strings are anagrams of each other", function(){
it("Anagram checker works", function(){
expect(anagrams.checkAnagram("god","dog")).toEqual(true);
expect(anagrams.checkAnagram("god","doge")).toEqual(false);
});
});
最佳答案
如果您使用 karma-runner,即使它来自 Angular 团队,它也不与 Angular 绑定(bind),您可以让 chrome 在 Debug模式下运行 jasmine 测试。 运行 karam 后,通过单击 chrome 窗口上的调试按钮打开 karma 调试窗口,然后打开开发人员工具。 在来源中您应该能够看到 Jasmine 规范。这可能会因您的设置而异,我在 base/src 下看到它。执行断点并重新加载页面。还有鲍勃,你的阿姨。
关于javascript - 如何仅使用 jasmine 调试我的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32594494/