有人知道JsTestdriver的setUp和tearDown函数/方法的语法吗?他们声称可以在他们的网站上对其进行定义,但我做对了。

谢谢。

最佳答案

我下载了代码,然后对“setUp”进行了摸索,发现了以下内容:

javascript/TestCaseBuilder.js:  if (typeof testCaseClass.prototype.setUp == 'undefined') {
javascript/TestCaseBuilder.js:    testCaseClass.prototype.setUp = function() {};
javascript/plugins/TestRunnerPlugin.js:    if (testCaseInstance.setUp) {
javascript/plugins/TestRunnerPlugin.js:      testCaseInstance.setUp();

与“tearDown”类似:
javascript/TestCaseBuilder.js:  if (typeof testCaseClass.prototype.tearDown == 'undefined') {
javascript/TestCaseBuilder.js:    testCaseClass.prototype.tearDown = function() {};
javascript/plugins/TestRunnerPlugin.js:      if (testCaseInstance.tearDown) {
javascript/plugins/TestRunnerPlugin.js:        testCaseInstance.tearDown();

因此,似乎setUp和tearDown函数的定义与任何其他测试函数一样,只是它们的名称是'setUp'和'tearDown'。他们的例子是:
GreeterTest = TestCase("GreeterTest");

GreeterTest.prototype.testGreet = function() {
  var greeter = new myapp.Greeter();
  assertEquals("Hello World!", greeter.greet("World"));
};

如果您不熟悉'prototype'键(因为它在javascript中具有非常特殊的含义),并且不知道您是JS程序员的水平,那么请查看these YUI vids

但是,这似乎是一个非常糟糕的设计决策,因为通过这种方式只能定义一个setUp和tearDown函数,因此我觉得必须有一种更好的方式,但这是我能找到的最好的方式。

我同意他们对setUp,tearDown的文档描述似乎不是最直观的。

如果您也在寻找其他选项,我将开始学习Selenium并感到满意(尽管我的文档也有所欠缺)

关于javascript - Jstestdriver安装和拆卸,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1844625/

10-09 21:16