首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在非英语站点上运行功能测试

在非英语站点上运行功能测试
EN

Drupal用户
提问于 2019-04-07 18:08:29
回答 1查看 52关注 0票数 1

在为一个BrowserTestBase站点创建功能测试(扩展D8 )时,我将如何更改BrowserTestBase临时创建的站点的默认语言?

我试图用非英语语言在一个网站上运行测试,我想通过在测试用例中使用英语术语等来避免混淆。

据我所见,Drupal/Core/Test/FunctionalTestSetupTrait.php将默认的langcode设置为'en‘(在installParameters方法中),并且没有指定自定义安装参数的选项。除了手动黑客攻击之外,是否还有一种更优雅、“适当”的方式来改变这种行为?

如果这是不可能的,那么在创建站点语言之后,是否有可能在测试类的setUp方法中更改它呢?

EN

回答 1

Drupal用户

发布于 2019-04-30 21:43:45

我想有几种方法。最简单的方法可能是重写installParameters()方法来指定所需的语言:

代码语言:javascript
复制
protected function installParameters() {
  // This will come back with the langcode set to `en`.
  $parameters = parent::installParameters();

  // Update to desired langcode:
  $parameters['parameters']['langcode'] = 'es';

  return $parameters;
}

我没有在内核中找到任何这样做的测试,但是有一些在通过UI安装过程中改变了它。(本例来自LanguagePathMonolingualTest)

代码语言:javascript
复制
// Make French the default language.
$edit = [
  'site_default_language' => 'fr',
];
$this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
票数 0
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/278809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档