複数のテスターによって複数のサーバーで実行されるいくつかのc#セレンテストスイートがあります。
できれば設定を簡素化したい。現在、それぞれ独自のapp.configを持つ複数のc#seleniumプロジェクトがあります。サーバーを変更したい場合は、app.configをすべて変更する必要があります。私のapp.configは現在、次のようになっています。
<connectionStrings>
<add name="Company"
connectionString="Data Source=func3_db1;Initial Catalog=CompanyProduction;Integrated Security=SSPI;"/>
<add name="CompanyProductionEntities"
connectionString="metadata=res://*/DataAccess.CompanyEntities.csdl|res://*/DataAccess.CompanyEntities.ssdl|res://*/DataAccess.CompanyEntities.msl;provider=System.Data.SqlClient;provider connection string="data source=func3_db1;initial catalog=CompanyProduction;integrated security=True;multipleactiveresultsets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
</connectionStrings>
Windows環境変数にもいくつかの設定があります。それは一種のあいまいな方法ですが、かなりうまく機能します。これらの設定にアクセスするには、次のようにします。
var value = Environment.GetEnvironmentVariable(varName, EnvironmentVariableTarget.User);
したがって、「 Firefox」または「Chrome」または「IE 」に設定できる「 CompanyTestBrowser 」という変数があります。
すべてのSeleniumテストを実行するPowerShellスクリプトは、必要なときにいつでも変数を簡単に変更できるため、環境変数が好きです。
ただし、これらのDB文字列をこのapp.configから引き出すことはできないようです。どうすれば、もう少しグローバルでダイナミックなものにそれらを移動できますか。理想的には、1つの場所に設定するだけで済みますか?理想的には、それらを他のような環境変数またはc#プロジェクトの外部にある構成ファイルに移動できます。
ありがとう!