我想开始使用测试框架,mocha + Expect 对我来说似乎不错。
假设我有这个功能,
/*
* Hides or shows loading .gif
* show : boolean
*/
function loadingMsg(show) {
var $loader = $("#loader");
if(show){
$loader.show();
}
else{
$loader.hide();
}
}
为了使其可测试,我是否需要添加如下所示的 Return 语句?
/*
* Hides or shows loading .gif
* show : boolean
*/
function loadingMsg(show) {
var $loader = $("#loader");
if($loader){
if(show){
$loader.show();
return "loader shown";
}
else{
$loader.hide();
return "loader shown";
}
}
else {
return "$loader undefined";
}
}
或者我应该测试 dom 元素“loader”?
最佳答案
不,你不知道。
而是检查 DOM 中的加载器元素显示属性。
评论后更新:
没有使用太多 mocha,但是在测试 UI 时,它几乎在每个框架或库中都有类似的风格。使用 jQuery 或任何可用的选择器库在 DOM 中查找元素,并检查它们的内容是否符合要求。在您的情况下,您将检查加载器元素是否显示 block 或不显示。
类似的东西 当加载程序显示时
expect($('#loader').css('display')).toBe('block');
当加载程序隐藏时
expect($('#loader').css('display')).toBe('none');
关于javascript - 测试时,我是否需要向我的函数添加更多 Return 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31648132/