2015-12-18 57 views
-1

图所示我有这样的功能:如何编写测试用例的功能,如在茉莉

function assignDatesToArbitrationCase(caseID, dateType,dt){ 
     var urlAssignDate = ConfigService.getBaseURL() + '/legalcase/legalcasedatetype' 
     var assignDateStr = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:leg="http://schemas.arccorp.com/services/airlinesalesreporting/legalCaseDateTypeV1"> ' + 
      '<soapenv:Header/> <soapenv:Body> <leg:assignToRequest> <leg:entity> ' + 
      '<leg:id legalCaseId="' + caseID + '" dateTypeId="' +dateType + '"/> ' + 
      '<leg:legalCaseDateTypeDt>' + dateFormatForServer(dt) + '</leg:legalCaseDateTypeDt>' + 
      '</leg:entity> </leg:assignToRequest> </soapenv:Body> </soapenv:Envelope>'; 
     return $http({ 
      url: urlAssignDate, 
      method: 'POST', 
      data: assignDateStr 
     }).then(function (results) { 
      var jsonObject = x2js.xml_str2json(results.data); 
      return jsonObject; 
     }) 
     } 

如何编写测试用例的功能,如茉莉图所示?

+0

你可以请尝试清理这个问题吗?目前的形式很难理解。为问题添加一些背景,以及您想要实现的目标。 –

回答

0

所以只是因为你问这个问题,我认为你使用茉莉花不正确。我想回答你为什么以及如何测试。 如果您期待jasmine github page。您将会发现以下对Jasmine的描述:

Jasmine是一个针对 JavaScript的行为驱动开发测试框架。

那么什么是行为驱动开发?这里你可以找到在Wikipedia

BDD的原则,好文章是:

  • 定义为单位首先测试集;
  • 然后执行该单元;
  • 最后验证单元的实现使测试成功。

所以在这一点上,你应该明白,为什么你的问题暗示了茉莉花的错误用法。

因为你应该先定义你的测试然后编写代码。如果你这样做,你需要编写可测试的代码。如果你在第一步中进行测试,那么你的函数看起来会完全不同,并且你永远不会问如何为该函数编写测试,因为在测试之前函数已经存在了。