gpt4 book ai didi

javascript - 没有通过 Var 的 Qunit 测试

转载 作者:行者123 更新时间:2023-11-28 20:46:33 25 4
gpt4 key购买 nike

我正在尝试对一个函数进行测试,该函数对表单进行一些非常简单的验证。但是,如果不将 vars 传递给函数,我无法弄清楚如何使用 qunit。这是我正在谈论的例子

  function validateForm(){
var name = $('#name').val();
var submit = true;
//do some validation
//if submit true
form.submit();
}

我在文档中看到的所有 qunit 示例都是这样做的

   ok(validateForm('hello'),'Hello is a valid name');

我应该只修改我的功能还是有办法使用这样的设置。

//编辑

我现在选择的选项是在当前函数之上设置另一个函数,该函数简单地解析表单输入,然后将它们作为变量发送到 validateForm() 函数

最佳答案

我最终所做的是以一种允许我在测试中通过变量的方式修改函数。

在代码会做这样的事情之前

       function validateForm(){
var value1 = $('#someinput').val();
//Do some validation based on these vars
$('#someform').submit();
}

现在,当按下提交按钮时,它会转到另一个函数,该函数为我解析 args 还添加了一个“测试”arg,因此在测试期间不会提交表单。

     function parseFormArgs(){
var value1 = $('#someinput').val();
var value2 = $('#otherinput').val();
var test = false;

validateForm(value1,value2,test);
}

function validateForm(value1,value2,test){
var submit = true;
//Do some validation
if( test != true && submit ){
$('#someform').submit();
}

return submit;
}

然后我的 qunit 看起来像这样

      var testFn = true;
test('validateForm()', function(){
equals(validateForm('ExampleVal1','ExampleVal2',testFn), false, 'Such and Such Values should not validate');
...
...
});

关于javascript - 没有通过 Var 的 Qunit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7677283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com