Upgrading SpecFlow -> 1.4.0

--HG--
branch : dev
This commit is contained in:
Nathan Heskew
2010-11-14 14:32:41 -08:00
parent 15efc07484
commit ef4b657aa8
13 changed files with 250 additions and 125 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+58 -58
View File
@@ -1,58 +1,58 @@
<?xml version="1.0" encoding="utf-8" ?> <?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="TechTalk.SpecFlow.tasks"/> <Import Project="TechTalk.SpecFlow.tasks"/>
<!-- this setting is to workaround the bug in VS (does not detect changes during the pre-build event) <!-- this setting is to workaround the bug in VS (does not detect changes during the pre-build event)
see: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=423670&wa=wsignin1.0 see: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=423670&wa=wsignin1.0
--> -->
<PropertyGroup> <PropertyGroup>
<UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable> <UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace> <ShowTrace Condition="'$(ShowTrace)'==''">false</ShowTrace>
<OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles> <OverwriteReadOnlyFiles Condition="'$(OverwriteReadOnlyFiles)'==''">false</OverwriteReadOnlyFiles>
<ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration> <ForceGeneration Condition="'$(ForceGeneration)'==''">false</ForceGeneration>
<VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput> <VerboseOutput Condition="'$(VerboseOutput)'==''">false</VerboseOutput>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(BuildServerMode)' == ''"> <PropertyGroup Condition="'$(BuildServerMode)' == ''">
<BuildServerMode Condition="'$(BuildingInsideVisualStudio)'=='true'">false</BuildServerMode> <BuildServerMode Condition="'$(BuildingInsideVisualStudio)'=='true'">false</BuildServerMode>
<BuildServerMode Condition="'$(BuildingInsideVisualStudio)'!='true'">true</BuildServerMode> <BuildServerMode Condition="'$(BuildingInsideVisualStudio)'!='true'">true</BuildServerMode>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<BuildDependsOn> <BuildDependsOn>
UpdateFeatureFilesInProject; UpdateFeatureFilesInProject;
$(BuildDependsOn) $(BuildDependsOn)
</BuildDependsOn> </BuildDependsOn>
<RebuildDependsOn> <RebuildDependsOn>
SwitchToForceGenerate; SwitchToForceGenerate;
$(RebuildDependsOn) $(RebuildDependsOn)
</RebuildDependsOn> </RebuildDependsOn>
</PropertyGroup> </PropertyGroup>
<Target Name="SwitchToForceGenerate"> <Target Name="SwitchToForceGenerate">
<PropertyGroup> <PropertyGroup>
<ForceGeneration>true</ForceGeneration> <ForceGeneration>true</ForceGeneration>
<OnlyUpdateIfChanged>true</OnlyUpdateIfChanged> <OnlyUpdateIfChanged>true</OnlyUpdateIfChanged>
</PropertyGroup> </PropertyGroup>
</Target> </Target>
<Target Name="UpdateFeatureFilesInProject"> <Target Name="UpdateFeatureFilesInProject">
<GenerateAll <GenerateAll
ShowTrace="$(ShowTrace)" ShowTrace="$(ShowTrace)"
BuildServerMode="$(BuildServerMode)" BuildServerMode="$(BuildServerMode)"
OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)" OverwriteReadOnlyFiles="$(OverwriteReadOnlyFiles)"
ProjectPath="$(MSBuildProjectFullPath)" ProjectPath="$(MSBuildProjectFullPath)"
ForceGeneration="$(ForceGeneration)" ForceGeneration="$(ForceGeneration)"
VerboseOutput="$(VerboseOutput)" VerboseOutput="$(VerboseOutput)"
/> />
</Target> </Target>
</Project> </Project>
+17 -17
View File
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8" ?> <?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<SpecFlowTasksPath Condition="'$(SpecFlowTasksPath)'==''">specflow.exe</SpecFlowTasksPath> <SpecFlowTasksPath Condition="'$(SpecFlowTasksPath)'==''">specflow.exe</SpecFlowTasksPath>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- handle absolute / targets-relative tasks path --> <!-- handle absolute / targets-relative tasks path -->
<__SpecFlowTasksFullPath>$(SpecFlowTasksPath)</__SpecFlowTasksFullPath> <__SpecFlowTasksFullPath>$(SpecFlowTasksPath)</__SpecFlowTasksFullPath>
<!-- handle relative tasks path --> <!-- handle relative tasks path -->
<__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')" <__SpecFlowTasksFullPath Condition="Exists('$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)')"
>$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)</__SpecFlowTasksFullPath> >$(MSBuildProjectDirectory)\$(SpecFlowTasksPath)</__SpecFlowTasksFullPath>
</PropertyGroup> </PropertyGroup>
<UsingTask TaskName="TechTalk.SpecFlow.Tools.MsBuild.GenerateAll" AssemblyFile="$(__SpecFlowTasksFullPath)" /> <UsingTask TaskName="TechTalk.SpecFlow.Tools.MsBuild.GenerateAll" AssemblyFile="$(__SpecFlowTasksFullPath)" />
</Project> </Project>
+175 -50
View File
@@ -1,50 +1,175 @@
1.4.0 - 2010/10/07
1.2.0 - 2009/11/25
Breaking changes:
New features: + The generator has been improved to provide source code language. Because of this, SpecFlow test generated
+ Generate #line pragmas to the output file (Issue 26) with this version will be incompatible with older runtimes.
+ Allow transformation of feature files from command-line and MsBuild (Issue 3)
+ Merge all command-line tool (generation, reports) to a single executable: specflow.exe New features:
+ Support for Dutch and Swedish language + Scoped Step Definitions: you can scope step definitions (bindings) to tags, features and scenarios. Scope filter
+ Support enumerations in step binding arguments (Issue 28) can be applied to a class or a method with the [StepScope] attribute.
See examples in Tests/FeatureTests/ScopedSteps/ScopedSteps.feature and Tests/FeatureTests/ScopedSteps/ScopedStepsBindings.cs
Fixed issues: (Thanks to Jose Simas for the contribution.)
+ MsTest does not refresh tests automatically (Issue 25) + Adding binding-culture to App.config. If set, this culture is used during execution of steps.
+ Fixes in report localization + VB-Step-Definition Skeleton Provider: For VB-projects, the suggested step skeletons are generated in VB.
+ Non-string parameters for bindings are not converted using the feature language (Issue 26) + Merging strongly typed context accessors from Darren Cauthon's SpecFlowAssist
+ Merging table/row extension methods from Darren Cauthon's SpecFlowAssist
1.1.0 - 2009/11/11 Add a using statement for the namespace TechTalk.SpecFlow.Assist to use the extension methods.
See also Darren's youtube tutorial: http://bit.ly/aY4VOd
New features: + Diagnostic tracing: VS2010 integration can display trace messages to the Output window
+ Support for MsTest (Issue 4) if tracing is enabled. Tracing can be enabled by setting the environment variable SPECFLOW_TRACE
+ Finalize configuration (Issue 13) to either "all" or to the comma separated list of individual SpecFlow traing categories (currently
+ Support German, French and Hungarian languages (Issue 5) only the category "EditorParser" is supported).
+ Add strong-name for specflow assemblies (Issue 2)
+ Allow scenario events to be instance methods (Issue 20) Fixed issues:
+ More descriptive name for the scenario outline example tests than XYZ_Variant1 (Issue 18) + Better error reporting for wrong Gherkin files (multiple errors displayed, detect duplicate scenario names)
+ NUnit SpecFlow test execution report (Issue 23) + Visual Studio 2010 editor slows down after editing a feature file for a longer time (Issue 9)
+ Step definition usage report (Issue 24)
1.3.5.2 - 2010/08/11
Fixed issues:
+ Runtime: Remove direct dependency on nunit.framework.dll from the runtime (Issue 12) Fixed issues:
+ Runtime: Binding methods with more than 4 parameters cannot be used (Issue 21) + Sorry, we're ironing out our deploy strategy with the new Mono/MonoDevelop integration. We didn't
+ Generator: Special language characters (e.g. accented letters) are removed when generating test method names (Issue 22) change the version in the MonoDevelop Add-In XML file.
1.0.2 - 2009/10/20 1.3.5.1 - 2010/08/11
New features: New features:
+ Runtime: allow non-static bindings + Support for hosting add-in on http://addins.monodevelop.com
+ Runtime: support multiple step attributes on a single binding method
1.3.5 - 2010/08/11
Fixed issues:
+ VS: Error message is displayed when you add a SpecFlow project item to your project. New features:
+ Parser: mixed order of Given/When/Then is not supported + Support for Mono (v2.6.7) & MonoDevelop (v2.4) by Dale Ragan
+ Runtime: the original phrasing of the keywords (Given/And/But) is not preserved
+ Generator: the generated test class has a "Fixture" suffix Fixed issues:
+ Parser: specifying any "given" should be optional + Generating code randomly for the wrong testing engine
+ Test class generation problem for Russian feature files
+ Fix tag support for Silverlight
1.0.1 - 2009/10/13
1.3.4 - 2010/07/28
Initial publish on http://www.specflow.org
Fixed issues:
+ Installation fails if Visual Studio 2010 is not installed
+ VS2010: Background section is not colored properly
1.3.3 - 2010/07/19
New features:
+ Support for MsTest report generation
usage: specflow mstestexecutionreport projectFile [/testResult:value] [/xsltFile:value] [/out:value]
projectFile Visual Studio Project File containing specs
[/testResult:value] Test Result file generated by MsTest. Defaults to TestResult.trx
[/out:value] Generated Output File. Defaults to TestResult.html
[/xsltFile:value] Xslt file to use, defaults to built-in stylesheet if not provided
+ Visual Studio 2010 editor support:
- syntax coloring with configurable colors ("Gherkin ...")
- outlining for scenarios
Uninstall the beta integration (TechTalk.SpecFlow.VsIntegration.GherkinFile.vsix) before installing
SpecFlow 1.3.3.
Fixed issues:
+ MbUnit execution fails for pending steps (Assert method not found: Inconclusive)
1.3.2 - 2010/06/29
New features:
+ Support for MsTest for .NET 4.0 categories. Configure the test provider name to
"MsTest.2010" in order to use the [TestCategory] attribute.
+ Silverlight support (beta), see http://wiki.github.com/techtalk/SpecFlow/silverlight-support
Fixed issues:
+ Report generation fails if no custom XSLT is provided
1.3.1 - 2010/06/21
New features:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v2.0.1
+ Custom XSLT can be specified for generating reports.
See examples in Tests/ReportingTests/CustomXsltTemplate.feature
+ The test error can be accessed through ScenarioContext.Current.TestError
(e.g. in an AfterScenario event).
+ [StepTransformation] attribute has been renamed to [StepArgumentTransformation]
because this name describe the intention better. Using the old attribute will
generate a warning.
+ Support for MbUnit
Fixed issues:
+ NullReference exception when using BeforeTestRun event (Issue 41)
1.3.0 - 2010/05/05
New features:
+ Using standard Gherkin parser (http://github.com/aslakhellesoy/gherkin) v1.0.24
+ Context injection in step definitions. Step definitions can get a context injected with
constructor injection. (Issue 30)
See examples in Tests/FeatureTests/ContextInjection
+ Using steps in other assemblies. This enables writing steps in VB. (Issue 19)
See examples in Tests/FeatureTests/ExternalSteps
+ Steps can be invoked from other steps using step text. See examples in
Tests/FeatureTests/CallingStepsFromStepDefinitions
+ Custom step parameter converters can be defined as a binding.
See examples in Tests/FeatureTests/StepArgumentTransfomation
+ SpecFlow feature files can be added also to VB.NET projects
+ Support for xUnit
+ Single installer for Visual Studio 2008 and 2010 (Issue 6, 10, 11)
+ Place GeneratedCodeAttribute and 'Designer generated code' region on generated code to
avoid having this code parsed by code analysis. (Issue 33)
+ Configuration option to disable all output. (Issue 29)
Use the following config to disable output:
<trace listener="TechTalk.SpecFlow.Tracing.NullListener, TechTalk.SpecFlow" />
Fixed issues:
+ SpecFlow Reporting doesn't work with Firefox (Issue 31)
+ Binding methods are executed using the culture of the feature file.
+ Several parsing issues are solved now (Issue 1, 8, 9, 37)
1.2.0 - 2009/11/25
New features:
+ Generate #line pragmas to the output file (Issue 26)
+ Allow transformation of feature files from command-line and MsBuild (Issue 3)
+ Merge all command-line tool (generation, reports) to a single executable: specflow.exe
+ Support for Dutch and Swedish language
+ Support enumerations in step binding arguments (Issue 28)
Fixed issues:
+ MsTest does not refresh tests automatically (Issue 25)
+ Fixes in report localization
+ Non-string parameters for bindings are not converted using the feature language (Issue 26)
1.1.0 - 2009/11/11
New features:
+ Support for MsTest (Issue 4)
+ Finalize configuration (Issue 13)
+ Support German, French and Hungarian languages (Issue 5)
+ Add strong-name for specflow assemblies (Issue 2)
+ Allow scenario events to be instance methods (Issue 20)
+ More descriptive name for the scenario outline example tests than XYZ_Variant1 (Issue 18)
+ NUnit SpecFlow test execution report (Issue 23)
+ Step definition usage report (Issue 24)
Fixed issues:
+ Runtime: Remove direct dependency on nunit.framework.dll from the runtime (Issue 12)
+ Runtime: Binding methods with more than 4 parameters cannot be used (Issue 21)
+ Generator: Special language characters (e.g. accented letters) are removed when generating
test method names (Issue 22)
1.0.2 - 2009/10/20
New features:
+ Runtime: allow non-static bindings
+ Runtime: support multiple step attributes on a single binding method
Fixed issues:
+ VS: Error message is displayed when you add a SpecFlow project item to your project.
+ Parser: mixed order of Given/When/Then is not supported
+ Runtime: the original phrasing of the keywords (Given/And/But) is not preserved
+ Generator: the generated test class has a "Fixture" suffix
+ Parser: specifying any "given" should be optional
1.0.1 - 2009/10/13
Initial publish on http://www.specflow.org
Binary file not shown.