【问题标题】:TYPO3 4.5 extbase test backend moduleTYPO3 4.5 extbase 测试后端模块
【发布时间】:2013-03-11 16:22:35
【问题描述】:

我正在寻找一种方法来测试我的 extbase-extension。我为前端和后端使用两种不同的模板路径。

module.myext{
    view {
        templateRootPath = myext/Resources/Private/Backend/Templates/
        partialRootPath = myext/Resources/Private/Backend/Partials/
        layoutRootPath = myext/Resources/Private/Backend/Layouts/
    }
}

后端模块没有任何问题,但我的测试不会得到不同的模板路径。如果我将 view.templateRootPath 写入 ext_typoscript_setup.txt 中的 config.tx_extbase 它可以工作,但在这种情况下,我所有的前端测试都不再工作了。解决此问题的最简单方法是合并模板路径并仅使用一个,但必须有解决此问题的方法。

有人有想法吗?

【问题讨论】:

标签: unit-testing phpunit typo3 fluid extbase


【解决方案1】:

您是否在根页面中静态包含扩展设置?

那么只要您将后端模块包含在网络工具中并在页面树中选择根页面,它就应该可以工作......

如果您在用户工具中包含您的模块,这是一个已知错误。见这里:

http://lists.typo3.org/pipermail/typo3-project-typo3v4mvc/2011-December/011174.html

你可以把这段代码放在你的 *ext_localconf.php* 中:

if (TYPO3_MODE === 'BE') {
    t3lib_extMgm::addTypoScript($_EXTKEY, 'constants', $tsIncludeConstants);
    t3lib_extMgm::addTypoScript($_EXTKEY, 'setup', $tsIncludeSetup);
}

$tsIncludeXX 是您的 TS 代码,用于包含扩展的配置文件:

$tsIncludeConstants = "<INCLUDE_TYPOSCRIPT: source=FILE:EXT:$_EXTKEY/Configuration/TypoScript/constants.txt>";
$tsIncludeSetup = "<INCLUDE_TYPOSCRIPT: source=FILE:EXT:$_EXTKEY/Configuration/TypoScript/setup.txt>";

这是一种蛮力,但它确实有效......

【讨论】:

  • “将其包含在网络工具中并选择根页面”是什么意思?我已经在我的根页面中静态包含扩展设置?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多