рдЖрдЧреЗ рдХреА рд╣рд▓рдЪрд▓ рдХреЗ рдмрд┐рдирд╛, рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВ:
- рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреБрдЫ .NET рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ;
- рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдиреЗ NUnit рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦреЗ (рдпрд╛ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ);
- рдЖрдкрдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2008 рдЯреАрдо рд╕рд┐рд╕реНрдЯрдо (рдпрд╛ рдЙрдЪреНрдЪрддрд░) рдпрд╛ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 рдкреНрд░реАрдорд┐рдпрдо (рдпрд╛ рдЙрдЪреНрдЪрддрд░) рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг (рдЙрд░реНрдл рдХреЛрдб рдХрд╡рд░реЗрдЬ) рдХреЗ рд╕рд╛рде рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдХреЗрд╡рд▓ рдПрдХ рдЫреЛрдЯрд╛ "рд▓реЗрдХрд┐рди" рдЖрдкрдХреЛ рд░рд╛рд╕реНрддрд╛ рд░реЛрдХрддрд╛ рд╣реИ: рдЯреЗрд╕реНрдЯ рд░рдирд░, рдЬрд┐рд╕реЗ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ MSTest рджреЗрдЦрддрд╛ рд╣реИ, рдФрд░ рдЕрдкрдиреЗ рдкреНрд░рд┐рдп NUnit рдФрд░ рдЕрд╡рдорд╛рдирдирд╛ тАЛтАЛрдХреЗ рдкрд╛рдЙрдВрдб рдкрд░ рд╢реВрдиреНрдп рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реИред рдХреНрдпрд╛ рдХрд░реЗрдВ?
рд╣рдо рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП рдЙрдкрд░реЛрдХреНрдд рд╕реНрдерд┐рддрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред Visual Studio рдореЗрдВ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ Visual Studio 2010 рдЕрд▓реНрдЯреАрдореЗрдЯ рд╣реИ) рд╣рдо рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ TestedAssembly рдХрд╣рддреЗ рд╣реИрдВред рдЙрдкрд░реНрдпреБрдХреНрдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╣рдо рдПрдХ рдПрдХрд▓ рдЯреЗрд╕реНрдЯреЗрдбрдХреНрд▓рд╛рд╕ рдХреНрд▓рд╛рд╕ рдЬреЛрдбрд╝реЗрдВрдЧреЗ, рдЬрд┐рд╕рдореЗрдВ рдПрдХрдорд╛рддреНрд░ рд╕рд░рд▓ рдЧреЗрдЯрд╕рдореЛрд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡рд┐рдзрд┐ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧреАред

рдЕрдм рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд▓рдЧреЗ рд░рд╣реЗрдВрдЧреЗред рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдПрдХ рдФрд░ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЬреЛрдбрд╝реЗрдВ, рдЬрд┐рд╕реЗ рд╣рдо TestAssembly рдХрд╣реЗрдВрдЧреЗред рдЗрд╕ рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдПрдХ GetedomeStringTest рд╡рд┐рдзрд┐ рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдПрдХ TestedClassTest рд╡рд░реНрдЧ рд╣реЛрдЧрд╛ред

рдЦреИрд░, рдЕрдм рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ: рдкрд░реАрдХреНрд╖рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЬрд┐рд╕реЗ рд╡рд╣ рдЪрд▓рд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реИред рдЦреИрд░, рдЕрдЧрд░ рд╡рд╣ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЕрдкрдиреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдкреЗрд╢реЗрд╡рд░, рдЕрд░реНрдерд╛рддреН NUnit рдЦреБрдж рдХреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рд▓реЗрдиреЗ рджреЗрдВред рд╣рдорд╛рд░реЗ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдПрдХ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЬреЛрдбрд╝реЗрдВ, рдЗрд╕ рдмрд╛рд░ рдЯреЗрд╕реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреНрд░рдХрд╛рд░, рдФрд░ рдЗрд╕реЗ рдХрд╣рддреЗ рд╣реИрдВ, NUnitProxyред рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ UnitTest1.cs рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрд╕рдореЗрдВ рдбрд╛рд▓ рджреЗрдЧрд╛, рдЬрд┐рд╕реЗ рд╣рдо рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рд╡реЗрдХ рдХреЗ рд╕рд╛рде рд╣рдЯрд╛ рджреЗрдВрдЧреЗ, рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЬреЗрдиреЗрд░рд┐рдХ рдЯреЗрд╕реНрдЯ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗред рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдкрд╣рд▓реЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ, рд╣рдореЗрдВ рдирдирд┐рдЯ-рдХрдВрд╕реЛрд▓-x86.exe (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ x86 рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ) рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░реЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣рдо рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкрде рд▓рд┐рдЦреЗрдВрдЧреЗ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЯреЗрд╕реНрдЯрдЕрд╕реНрдкреЗрдХреНрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ)ред рдореБрдЦреНрдп рдмрд╛рдд - рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЛ рдордд рднреВрд▓рдирд╛ред

рдЕрдм рд╕реЙрд▓реНрдпреВрд╢рди рдЖрдЗрдЯрдо рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ NUnitProxy рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рднреМрддрд┐рдХ рд╣реЛ рдЧрдпрд╛, рдФрд░ Local.testsettings рдлрд╝рд╛рдЗрд▓ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдЯреЗрд╕реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдбрд╛рдпрд▓реЙрдЧ рдЦреБрд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдФрд░ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдЯреИрдм рдкрд░ рдЬрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдХреЛрдб рдХрд╡рд░реЗрдЬ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдЖрдк рдЕрд╕реЗрдВрдмрд▓реА рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рдХрд╡рд░реЗрдЬ рдбрд┐рдЯреЗрд▓ рд╡рд┐рдВрдбреЛ рджреЗрдЦреЗрдВрдЧреЗ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛрдб рдХрд╡рд░реЗрдЬ рдбреЗрдЯрд╛ рдПрдХрддреНрд░ рдХрд░реЗрдЧрд╛ред рдпрд╣рд╛рдВ рдПрдХ рдФрд░ рдЫреЛрдЯрд╛ рдЕрддрд┐ рд╕реВрдХреНрд╖реНрдо рдЕрдВрддрд░ рд╣реИ: рдпрджрд┐ рдЖрдк рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ \ bin \ Debug \ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ, рддреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдмреНрд░рд╣реНрдорд╛рдВрдб рдХрд╛ рдХрд░рд╛рдорд╛рддреА рдЦрд╛рд▓реАрдкрди рд╣реЛрдЧрд╛ред рдЕрд╕реЗрдВрдмрд▓реА рдЬреЛрдбрд╝реЗрдВ ... рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рддрд╣рдд рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд▓рд┐рдП рдкрде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдЬреЛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ \ bin \ Debug \ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ TestAssembly)ред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЬрдЧрд╣ рдЪреЗрдХрдмреЙрдХреНрд╕ рдореЗрдВ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рдЕрд╕реЗрдВрдмрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╢рд╛рдВрдд рдЖрддреНрдорд╛ рдХреЗ рд╕рд╛рде, рдареАрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рд▓рд╛рдЧреВ рдХрд░реЗрдВ рдФрд░ рдмрдВрдж рдХрд░реЗрдВред

рд╡рд╣ рд╕рдм рд╣реИред рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╣рдорд╛рд░реЗ рдкреНрд░реЙрдХреНрд╕реА рдЯреЗрд╕реНрдЯ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ, рдЗрд╕реЗ рдЪрд▓рд╛рддрд╛ рд╣реИ, NUnit рдХрдВрд╕реЛрд▓ рдХреЛ рдЦреБрд▓рд╛ рджреЗрдЦрддрд╛ рд╣реИ, рдФрд░ рдЯреЗрд╕реНрдЯ рд░рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░ рд╣рдо рдХреЛрдб рдХрд╡рд░реЗрдЬ рдЯреИрдм рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ рд╣рдо рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрддреЗ рд╣реИрдВред

рдареАрдХ рд╣реИ, рдЕрдВрдд рдореЗрдВ, рд╢рд╣рдж рдХреЗ рдПрдХ рдмреИрд░рд▓ рдореЗрдВ рджреЛ рдмрдбрд╝реЗ рдЪрдореНрдордЪ рдЯрд╛рд░ред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕рднреА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде x64 рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ: рдпрджрд┐ рдЖрдк рдХреЛрдб рдХрд╡рд░реЗрдЬ рдЪрд╛рд╣рддреЗ рд╣реИрдВ - x86 рдХреЗ рддрд╣рдд recompile (рдХреЛрдИ рднреА рд╕реАрдкреАрдпреВ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)ред рджреВрд╕рд░реЗ, рдпрджрд┐ рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рдХреЛрдб рдмрд┐рд▓реНрдХреБрд▓ рднреА рдХрд╡рд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдЕрд╕реЗрдВрдмрд▓реА рдЕрдВрддрд┐рдо рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧреА (рдЖрдк GetSomeStringTest рдкрджреНрдзрддрд┐ рдХреЗ рдирд┐рдХрд╛рдп рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдХреЗ рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ), рдЬреЛ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЕрдВрддрд┐рдо рдХрд╡рд░реЗрдЬ рдХрд╛ рдЧрд▓рдд рдореВрд▓реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдЬрдм рд╡реЗ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ) рдХрдИ рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛)ред