-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrealease.txt
155 lines (109 loc) · 6.92 KB
/
realease.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
SMARTTESTS RELEASE
------------------
1. Change version number of changed projects:
a. SmartTests:
- Properties|Package|Package version
- Properties|Package|Release notes
- Properties|Package|Assembly version
- Properties|Package|Assembly File Version
b. SmartTestsAnalyzer:
- Properties|Package|Package version
- Properties|Package|Release notes
- Properties|Package|Assembly version
- Properties|Package|Assembly File Version
c. SmartTestsDoc:
- Properties|Help File|Help file version
d. SmartTestsExtension:
- Properties|AssemblyInfo.cs|AssemblyVersion
- Properties|AssemblyInfo.cs|AssemblyFileVersion
- source.extension.vsixmanifest|Version
2. Build Release version
3. Patche SmartTestsAnalyzer for dependencies
a. Open "C:\Git\SmartTests\SmartTestsAnalyzer\SmartTestsAnalyzer\bin\Release\SmartTests.Analyzer.<version>.nupkg" as a Zip file
b. Add "Newtonsoft.Json.dll" and SmartTests.dll from sub-directory "netstandard1.3" to sub-directory "analyzers\dotnet\cs\" of the Zip file
4. Relase SmartTests Library
a. Login to https://www.nuget.org
b. LudovicDubois|Upload Package
c. Browse|"C:\Git\SmartTests\SmartTests\bin\Release\SmartTests.<version>.nupkg"
d. Import this documentation:
---------------------------------------------------------------------------------------------------
# Smart Tests
## Context
We all know how unit testing is important for non-regression of our softwares.
We all know that TDD (Test Driven Development) enables us to have better code and better management of the development process.
Fortunately, it is very easy to learn Testing Frameworks and to write unit tests technically.
BUT, it is very hard to think the good way to write unit test:
1. How do I know how many tests to write?
1. More, how do I know which cases we have to test?
1. According to our Act code, it is very easy to assert that:
1. A property changed, but how do we know if any other unexpected side effect occurred?
1. A property changed, but how do we know if our test is still correct if anyone changed our Setup?
For example, by giving the value you want to set as the initial value of your object?
1. How can we show the expected effect of the Act code as we generally use hard coded values (because it is easier to code)?
1. Finally, how can we do high level testing without multiple lines of code?
## What is *Smart Tests*
*Smart Tests* is a library and a Visual Studio Analyzer to respond to all these questions... and more!
1. The Act line of your test is instantly identifiable.
1. You express your Act logical intent and the Analyzer will display all missing tests.
1. You can use smarter assertions than the ones provided by usual Testing Frameworks as *Smart Tests* knows what is your Act and when it is run.
1. You ensure that a PropertyChanged event is raised with only one line of code.
1. You ensure that any event is raised with only one line of code.
1. You ensure that an object didn't changed at all with only one line of code.
1. You ensure that your property set is effective by checking its value after is not equal to its value before with only one line of code.
1. You show each effect of your Act code relatively its previous value with only one line of code.
For now, it supports C# with NUnit, xunit or MSTests.
However, it will very easy to add other Testing Frameworks (you only write a very simple sub-class).
You can also extend smart assertions in a very easily way.
---------------------------------------------------------------------------------------------------
e. Preview and ensure everything is correct
f. Submit
5. Release SmartTestsAnalyzer
a. Login to https://www.nuget.org if necessary (should be logged in from previous step)
b. LudovicDubois|Upload Package
c. Browse|""C:\Git\SmartTests\SmartTestsAnalyzer\SmartTestsAnalyzer\bin\Release\SmartTests.Analyzer.<version>.nupkg""
d. Import this documentation:
---------------------------------------------------------------------------------------------------
# Smart Tests
## Context
We all know how unit testing is important for non-regression of our softwares.
We all know that TDD (Test Driven Development) enables us to have better code and better management of the development process.
Fortunately, it is very easy to learn Testing Frameworks and to write unit tests technically.
BUT, it is very hard to think the good way to write unit test:
1. How do I know how many tests to write?
1. More, how do I know which cases we have to test?
1. According to our Act code, it is very easy to assert that:
1. A property changed, but how do we know if any other unexpected side effect occurred?
1. A property changed, but how do we know if our test is still correct if anyone changed our Setup?
For example, by giving the value you want to set as the initial value of your object?
1. How can we show the expected effect of the Act code as we generally use hard coded values (because it is easier to code)?
1. Finally, how can we do high level testing without multiple lines of code?
## What is *Smart Tests*
*Smart Tests* is a library and a Visual Studio Analyzer to respond to all these questions... and more!
1. The Act line of your test is instantly identifiable.
1. You express your Act logical intent and the Analyzer will display all missing tests.
1. You can use smarter assertions than the ones provided by usual Testing Frameworks as *Smart Tests* knows what is your Act and when it is run.
1. You ensure that a PropertyChanged event is raised with only one line of code.
1. You ensure that any event is raised with only one line of code.
1. You ensure that an object didn't changed at all with only one line of code.
1. You ensure that your property set is effective by checking its value after is not equal to its value before with only one line of code.
1. You show each effect of your Act code relatively its previous value with only one line of code.
For now, it supports C# with NUnit, xunit or MSTests.
However, it will very easy to add other Testing Frameworks (you only write a very simple sub-class).
You can also extend smart assertions in a very easily way.
---------------------------------------------------------------------------------------------------
e. Preview and ensure everything is correct
f. Submit
6. Release of SmartTestsExtension
a. Login to https://marketplace.visualstudio.com/
b. Publish extensions
c. ... after SmartTests.Extension|Edit
d. Click on the pen in Upload extension|"C:\Git\SmartTests\SmartTestsExtension\bin\Release\SmartTestsExtension.vsix"
e. [Save & Upload]
7. Release of documentation
a. Login to ftp://prettyobjects.com
b. Go to prettyobjects.com/wwwroot/Help
c. Replace everything with content of C:\Git\SmartTests\SmartTestsDoc\Help
8. Publish Sources
a. Push source code to github
b. Add a version tag that is pushed too.
That's all!