Localization 如何设置编码UI测试的区域性以从资源文件获取本地化文本?

Localization 如何设置编码UI测试的区域性以从资源文件获取本地化文本?,localization,automated-tests,coded-ui-tests,Localization,Automated Tests,Coded Ui Tests,情景: 我们有一个具有本地化功能的应用程序,我们使用广泛的编码UI测试套件进行自动化测试。UI文本反映用户选择的主要语言,例如法语 我们有许多消息断言来检查特定的结果,因此我们必须适应本地化环境 我已经开始创建本地化的Resources.resx文件(例如Resources.fr-fr.resx),并将CurrentUICulture设置为fr-fr,但始终检索英文字符串。(Properties.Resources.Culture始终为空,即使我强制设置,也不会成功…) 有没有关于如何实现这一点

情景: 我们有一个具有本地化功能的应用程序,我们使用广泛的编码UI测试套件进行自动化测试。UI文本反映用户选择的主要语言,例如法语

我们有许多消息断言来检查特定的结果,因此我们必须适应本地化环境

我已经开始创建本地化的Resources.resx文件(例如Resources.fr-fr.resx),并将CurrentUICulture设置为fr-fr,但始终检索英文字符串。(Properties.Resources.Culture始终为空,即使我强制设置,也不会成功…)

有没有关于如何实现这一点的想法,或者我的错误在哪里?我是否必须使用本地化文本强制部署程序集


谢谢

好吧,我想出来了:
对于编码的UI测试,所有必需的程序集都必须位于..\TestResults\uniqueTestInstance\Out文件夹中。语言程序集不会自动复制到此处,因此我所做的是将以下内容添加到我的testsettings文件中:

<?xml version="1.0" encoding="UTF-8"?>
<TestSettings name="RegressionCUIT" id="caf0f1b1-7dd7-4bbe-9920-edd664229791" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
    <Description>These are default test settings for a local test run.</Description>
    <Deployment>
        <DeploymentItem filename="Resources\TestData.xml" />
        <DeploymentItem filename="RegressionTesting\bin\Debug\de-DE\" outputDirectory="de-DE\" />
        <DeploymentItem filename="RegressionTesting\bin\Debug\fr-FR\" outputDirectory="fr-FR\" />
    </Deployment>
</TestSettings>

这些是本地测试运行的默认测试设置。
请注意DeploymentItem上的outputDirectory属性。 现在工作得很出色

请在此处阅读有关文件部署的详细信息: