【问题标题】:Unit Testing Javascript Code Inlined Within PHP在 PHP 中内联的单元测试 Javascript 代码
【发布时间】:2012-06-05 18:10:06
【问题描述】:

在工作中,我的任务是对我们的 Javascript 代码进行单元测试。我选择了 Jasmine 单元测试框架并开始学习如何使用它,当我得知我们现在在 PHP 中内联我们的 Javascript 代码,甚至不再使用 Javascript 文件时。

Jasmine 可以解决这个问题吗?还有其他框架可以吗?我应该使用 PHP 单元测试和 Javascript 单元测试吗?我最好的方法是什么?

来自一个相当基本的页面的一些示例代码给你一个想法:

http://pastebin.com/K3YP33id

http://pastebin.com/QaR8zUh1

任何形式的见解将不胜感激

【问题讨论】:

  • 这是一个很难进入的地方(我自己在那里)。 IMO,你真的需要测试两者,对于 JS,你可能需要像 PhantomJS 这样的东西来测试来自 HTTP 请求的实际 JavaScript 输出。
  • “我们现在在 PHP 中内联我们的 Javascript 代码,甚至不再使用 Javascript 文件。” ...哇...谁认为这是个好主意? ???
  • Aknosis - 我将研究 PhantomJS 和 PHP 单元测试框架,感谢您的回复!
  • rdlowrey- 办公室里好像有几个人在说这个!到目前为止,除了这个问题之外,一切似乎都正常。
  • 我们决定拆分 PHP 和 Javascript,我会说这是一个谨慎的决定 :) 感谢 JMC 的投入!

标签: php javascript unit-testing


【解决方案1】:

最佳做法是将所有 PHP 从 javascript 中分离出来,并分别进行单元测试。从长远来看,维护和测试高度集成的代码将成为一场噩梦。尽可能地尝试模块化。

例如,我会这样做:

var exampleVariables = {
    'name' = <?=$name?>,
    'occupation' = <?=$occupation?>
};

unitTestableFunction(exampleVariables);

【讨论】:

    猜你喜欢
    • 2013-03-08
    • 1970-01-01
    • 2015-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-31
    • 2012-03-20
    相关资源
    最近更新 更多