Javascript JsTestDriver,测试函数的名称

Javascript JsTestDriver,测试函数的名称,javascript,js-test-driver,Javascript,Js Test Driver,测试函数的名称是否有任何限制 当我将以下内容写成testA()和testB()时,它们都将被实现 AjaxCreateTest = TestCase("AjaxCreateTest"); AjaxCreateTest.prototype.testA = function(){}; AjaxCreateTest.prototype.testb = function(){}; 但是,如果我将名称从“testB”更改为“AjaxCreateT”,只需实现testA()。真奇怪。有人能帮忙吗?

测试函数的名称是否有任何限制

当我将以下内容写成
testA()
testB()
时,它们都将被实现

AjaxCreateTest = TestCase("AjaxCreateTest");  
AjaxCreateTest.prototype.testA = function(){};  
AjaxCreateTest.prototype.testb = function(){};

但是,如果我将名称从“testB”更改为“AjaxCreateT”,只需实现
testA()
。真奇怪。有人能帮忙吗?

JsTestDriver只执行以前缀“test”开头的方法。这是一种命名约定,使您能够在同一对象上编写不作为测试执行的帮助器方法

还有两个保留的方法名
setUp
tearDown
,分别在每次测试之前和之后执行

您甚至可以在测试名称中使用空格,这使您的测试具有良好的可读性,例如:

TestCase("AjaxCreateTest", {
    setUp : function() {
        this.subject = new MyAjaxCode();
        this.stubXHR();
    },

    tearDown : function() {
        this.restoreXHR();
    },

    stubXHR : function() {
        // stub global objects to intercept Ajax calls
    },

    restoreXHR : function() {
        // restore global state
    },

    "test should say hi" : function() {
        assertEquals("Hi", this.subject.sayHi());
    }
}
在上面的示例中,只有一个测试,其余的是helper方法

我可以推荐您帮助您存根Ajax调用(请参阅“Fake XHR”)并提供更多示例