问题描述
我在网上搜索,除了SPecFlow官方网站上的信息外,似乎没有太多其他信息。但是该网站仅提供高级信息
基本上我想将当前的app.config文件更新为specflow.json文件
只是想知道什么是最佳/正确的方法?而且,如果我需要添加任何其他代码来完成这项工作,我会不会意识到?
当前的App.config:
<configuration>
<configSections>
<section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler,TechTalk.SpecFlow"/>
</configSections>
<specFlow>
<unitTestProvider name="MsTest" />
</specFlow>
<appSettings>
<add key="TestURL" value="https://test.com" />
<add key="UATURL" value="https://test.com"/>
<add key="PRODURL" value="https://test.com" />
<add key ="browserType" value = "chrome" />
</appSettings>
<connectionStrings>
<add name="DataBaseName" connectionString=""/>
<add name="DataBaseName" connectionString=""/>
</connectionStrings>
</configuration>
当前specflow.json
{
"bindingCulture": {
"language": "en-us"
},"language": {
"feature": "en-us"
}
我会假设这样吗?
{
"bindingCulture": {
"language": "en-us"
},"language": {
"feature": "en-us"
},"stepAssemblies": [
{ "assembly": "" }
],"appSettings": [
{
"key": "TestURL","value": ""
},{
"key": "UATURL",{
"key": "PRODURL",{
"key": "browserType","value": "Chrome"
}
],"connectionStrings": [
{
"connectionString": "","name": ""
}
]
我在测试中怎么称呼它?以前我会使用以下内容:
var url = ConfigurationManager.AppSettings[“TestURL”];
解决方法
specflow.json
文件仅包含SpecFlow的配置。这就是文档中什么都没有的原因。但是我们可能应该澄清一下。
您必须将appSettings和ConnectionString放在单独的配置文件中。 根据您所使用的内容,可以将它们保留在app.config中,将它们放在appsettings.json文件或其他文件中。这是我无法回答的,因为它100%取决于您使用的解决方案。
完全公开:我是SpecFlow和SpecFlow +的开发商之一