{"id":2384,"date":"2017-03-19T02:12:52","date_gmt":"2017-03-19T00:12:52","guid":{"rendered":"http:\/\/mariusbancila.ro\/blog\/?p=2384"},"modified":"2017-03-19T02:12:52","modified_gmt":"2017-03-19T00:12:52","slug":"tdd-with-live-unit-testing-in-visual-studio-2017","status":"publish","type":"post","link":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/","title":{"rendered":"TDD with Live Unit Testing in Visual Studio 2017"},"content":{"rendered":"<p>Visual Studio 2017 Enterprise provides a feature called Live Unit Testing that enables developers to see live how changing C# and VB.NET code affects its corresponding unit tests. Among its features, it includes showing coverage information in the editor as you type, integration with the Test Explorer, including\/excluding targeted test methods or projects for large solutions, quick navigation to failed tests. It works with MSTest, xUnit.net and NUnit, but only for .NET Framework, as support for .NET Standard has not been added yet.<\/p>\n<p>Detailed information about this productivity tool is available in this blog post: <a href=\"https:\/\/blogs.msdn.microsoft.com\/visualstudio\/2017\/03\/09\/live-unit-testing-in-visual-studio-2017-enterprise\/\" target=\"_blank\">Live Unit Testing in Visual Studio 2017 Enterprise<\/a>. In this article, I will show how this feature help you when you do test driven development. For this purpose, I will create a class called <tt>Point3D<\/tt> that is supposed to model a point in 3-dimentional space, as part of a .NET Framework class library called <i>ALibraryHasNoName<\/i>. A separate unit testing project called <i>ALibraryHasNoName.Test<\/i> contains an unit testing class <tt>Point3DTest<\/tt>. Initially, these are empty.<\/p>\n<p><a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest01.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest01.png\" alt=\"\" width=\"318\" height=\"253\" class=\"alignnone size-full wp-image-2385\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest01.png 318w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest01-300x239.png 300w\" sizes=\"auto, (max-width: 318px) 100vw, 318px\" \/><\/a><\/p>\n<p>To start the live unit testing you need to run go to <i>Test > Live Unit Testing<\/i> and press <i>Start<\/i>.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest02.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest02.png\" alt=\"\" width=\"349\" height=\"237\" class=\"alignnone size-full wp-image-2387\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest02.png 349w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest02-300x204.png 300w\" sizes=\"auto, (max-width: 349px) 100vw, 349px\" \/><\/a><\/p>\n<p>I will start by writing a test for the constructor of <tt>Point3D<\/tt>. The constructor is supposed to take three arguments, representing the values for the coordinates in the three dimensions, X, Y and Z.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest03.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest03.png\" alt=\"\" width=\"656\" height=\"335\" class=\"alignnone size-full wp-image-2388\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest03.png 656w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest03-300x153.png 300w\" sizes=\"auto, (max-width: 656px) 100vw, 656px\" \/><\/a><\/p>\n<p>Since the <tt>Point3D<\/tt> class is empty, this line of code produces a compiling error. I can use the refactoring tools and create an implementation for the constructor.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest04.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest04.png\" alt=\"\" width=\"677\" height=\"600\" class=\"alignnone size-full wp-image-2389\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest04.png 677w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest04-300x266.png 300w\" sizes=\"auto, (max-width: 677px) 100vw, 677px\" \/><\/a><\/p>\n<p>After the code is added, when I navigate to the source code document I can see green check marks on the left of the code indicating lines of code covered by successful unit tests.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest05.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest05.png\" alt=\"\" width=\"705\" height=\"521\" class=\"alignnone size-full wp-image-2390\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest05.png 705w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest05-300x222.png 300w\" sizes=\"auto, (max-width: 705px) 100vw, 705px\" \/><\/a><\/p>\n<p>I don&#8217;t like the default names <tt>v1<\/tt>, <tt>v2<\/tt>, <tt>v3<\/tt> and the fact that these values are represented by fields. I want to use properties called <tt>X<\/tt>, <tt>Y<\/tt> and <tt>Z<\/tt>. Therefore I am refactorying the generated code as shown below:<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest06.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest06.png\" alt=\"\" width=\"808\" height=\"566\" class=\"alignnone size-full wp-image-2392\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest06.png 808w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest06-300x210.png 300w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest06-768x538.png 768w\" sizes=\"auto, (max-width: 808px) 100vw, 808px\" \/><\/a><\/p>\n<p>Back to the unit test, I am adding a few tests for these properties, making sure I get back the values I passed to the constructor.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest07.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest07.png\" alt=\"\" width=\"626\" height=\"249\" class=\"alignnone size-full wp-image-2393\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest07.png 626w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest07-300x119.png 300w\" sizes=\"auto, (max-width: 626px) 100vw, 626px\" \/><\/a><\/p>\n<p>The result when switching back to the <tt>Point3D<\/tt> class is that these properties are now covered by 1 test.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest08.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest08.png\" alt=\"\" width=\"661\" height=\"225\" class=\"alignnone size-full wp-image-2394\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest08.png 661w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest08-300x102.png 300w\" sizes=\"auto, (max-width: 661px) 100vw, 661px\" \/><\/a><\/p>\n<p>Next thing I want to do is add a static property\/field to represent the origin of the 3D space, i.e. the point at (0,0,0). For this I am writing a new test method with the content shown below. Visual Studio suggests several ways to generate the missing symbol: as a property, field or read-only field, which I find the closest to what I want so I am going with this.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest09.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest09.png\" alt=\"\" width=\"720\" height=\"327\" class=\"alignnone size-full wp-image-2395\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest09.png 720w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest09-300x136.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>The code is generated and I get a visual indication that it is already covered by 1 test.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10.png\" alt=\"\" width=\"689\" height=\"142\" class=\"alignnone size-full wp-image-2397\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10.png 689w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10-300x62.png 300w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/a><\/p>\n<p>I want to add tests to make sure the three properties are all 0 as expected.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10a.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10a.png\" alt=\"\" width=\"603\" height=\"251\" class=\"alignnone size-full wp-image-2398\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10a.png 603w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest10a-300x125.png 300w\" sizes=\"auto, (max-width: 603px) 100vw, 603px\" \/><\/a><\/p>\n<p>Back to the source code I can see now that each property is covered by two succesful tests at this point.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest11.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest11.png\" alt=\"\" width=\"633\" height=\"160\" class=\"alignnone size-full wp-image-2399\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest11.png 633w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest11-300x76.png 300w\" sizes=\"auto, (max-width: 633px) 100vw, 633px\" \/><\/a><\/p>\n<p>If you click the passing indicator, it shows the tests that cover it, whether they passed or failed, and the duration of their execution.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest12.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest12.png\" alt=\"\" width=\"920\" height=\"241\" class=\"alignnone size-full wp-image-2400\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest12.png 920w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest12-300x79.png 300w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest12-768x201.png 768w\" sizes=\"auto, (max-width: 920px) 100vw, 920px\" \/><\/a><\/p>\n<p>The last thing I want to do for this demo is adding a method to do a translation of the point in the 3d space. I want to call this method <tt>Offset<\/tt>. Therefore, I start with a new test method, called <tt>TestOffset<\/tt> where I create a point and invoke the new method. Visual Studio suggest to generate the missing method and I will go with the suggested code.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest13.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest13.png\" alt=\"\" width=\"720\" height=\"451\" class=\"alignnone size-full wp-image-2401\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest13.png 720w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest13-300x188.png 300w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/a><\/p>\n<p>At this point the test is failing. Instead of a green check mark on the left, I see red crosses, indicating a failure.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest14.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest14.png\" alt=\"\" width=\"607\" height=\"222\" class=\"alignnone size-full wp-image-2402\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest14.png 607w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest14-300x110.png 300w\" sizes=\"auto, (max-width: 607px) 100vw, 607px\" \/><\/a><\/p>\n<p>These marks can be used to get more information about the failure. It turns out that the method is throwing an exception, that is not caught, so the test is failing.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest15.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest15.png\" alt=\"\" width=\"936\" height=\"280\" class=\"alignnone size-full wp-image-2403\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest15.png 936w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest15-300x90.png 300w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest15-768x230.png 768w\" sizes=\"auto, (max-width: 936px) 100vw, 936px\" \/><\/a><br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest16.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest16.png\" alt=\"\" width=\"731\" height=\"222\" class=\"alignnone size-full wp-image-2404\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest16.png 731w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest16-300x91.png 300w\" sizes=\"auto, (max-width: 731px) 100vw, 731px\" \/><\/a><\/p>\n<p>Next, I will change the implementation of the <tt>Offset<\/tt> method to reflect what it is expected from it, and the red crosses turn instantly into green check marks.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest17.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest17.png\" alt=\"\" width=\"750\" height=\"250\" class=\"alignnone size-full wp-image-2405\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest17.png 750w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest17-300x100.png 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/a><\/p>\n<p>To check the effect of the function, I am adding tests for each of the three properties of the class.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest18.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest18.png\" alt=\"\" width=\"612\" height=\"279\" class=\"alignnone size-full wp-image-2406\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest18.png 612w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest18-300x137.png 300w\" sizes=\"auto, (max-width: 612px) 100vw, 612px\" \/><\/a><\/p>\n<p>Going back to the class source code I can see that each of the three properties now has three successful tests that cover them.<br \/>\n<a href=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest19.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest19.png\" alt=\"\" width=\"921\" height=\"290\" class=\"alignnone size-full wp-image-2407\" srcset=\"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest19.png 921w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest19-300x94.png 300w, https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest19-768x242.png 768w\" sizes=\"auto, (max-width: 921px) 100vw, 921px\" \/><\/a><\/p>\n<p>Although this post only covers some of the capabilities of live unit testing I hope it shows how helpful it can be in writing unit tests in general and with TDD in particular. For details about the features check the official documentation.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Visual Studio 2017 Enterprise provides a feature called Live Unit Testing that enables developers to see live how changing C# and VB.NET code affects its corresponding unit tests. Among its features, it includes showing coverage information in the editor as you type, integration with the Test Explorer, including\/excluding targeted test methods or projects for large &#8230; <a title=\"TDD with Live Unit Testing in Visual Studio 2017\" class=\"read-more\" href=\"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/\" aria-label=\"Read more about TDD with Live Unit Testing in Visual Studio 2017\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","advgb_blocks_editor_width":"","advgb_blocks_columns_visual_guide":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[13,11,52,10],"tags":[507,506,55,505],"class_list":["post-2384","post","type-post","status-publish","format-standard","hentry","category-net","category-csharp","category-tools","category-visual-studio","tag-tdd","tag-testing","tag-visualstudio","tag-vs2017"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Marius Bancila\"\/>\n\t<meta name=\"keywords\" content=\"visualstudio,vs2017,testing,tdd\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Marius Bancila&#039;s Blog | About code. Mostly on C++\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"TDD with Live Unit Testing in Visual Studio 2017\" \/>\n\t\t<meta property=\"og:description\" content=\"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2017-03-19T00:12:52+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2017-03-19T00:12:52+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"TDD with Live Unit Testing in Visual Studio 2017\" \/>\n\t\t<meta name=\"twitter:description\" content=\"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#article\",\"name\":\"TDD with Live Unit Testing in Visual Studio 2017\",\"headline\":\"TDD with Live Unit Testing in Visual Studio 2017\",\"author\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/author\\\/admin\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/livetest01.png\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#articleImage\",\"width\":318,\"height\":253},\"datePublished\":\"2017-03-19T02:12:52+02:00\",\"dateModified\":\"2017-03-19T02:12:52+02:00\",\"inLanguage\":\"en-US\",\"commentCount\":1,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#webpage\"},\"articleSection\":\".NET, C#, Tools, Visual Studio, TDD, testing, VisualStudio, VS2017\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/#listItem\",\"name\":\"IT\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/#listItem\",\"position\":2,\"name\":\"IT\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/#listItem\",\"name\":\"Software\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/#listItem\",\"position\":3,\"name\":\"Software\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/#listItem\",\"name\":\".NET\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/#listItem\",\"name\":\"IT\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/#listItem\",\"position\":4,\"name\":\".NET\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/csharp\\\/#listItem\",\"name\":\"C#\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/#listItem\",\"name\":\"Software\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/csharp\\\/#listItem\",\"position\":5,\"name\":\"C#\",\"item\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/csharp\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#listItem\",\"name\":\"TDD with Live Unit Testing in Visual Studio 2017\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/#listItem\",\"name\":\".NET\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#listItem\",\"position\":6,\"name\":\"TDD with Live Unit Testing in Visual Studio 2017\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/category\\\/it\\\/software\\\/net\\\/csharp\\\/#listItem\",\"name\":\"C#\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#organization\",\"name\":\"Marius Bancila's Blog\",\"description\":\"About code. Mostly on C++\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/author\\\/admin\\\/#author\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/author\\\/admin\\\/\",\"name\":\"Marius Bancila\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a84dd2831d955c38355ddea55df4df260809b88f36408bc14fd4eab8f7f131c9?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Marius Bancila\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#webpage\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/\",\"name\":\"TDD with Live Unit Testing in Visual Studio 2017\",\"description\":\"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/2017\\\/03\\\/19\\\/tdd-with-live-unit-testing-in-visual-studio-2017\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/author\\\/admin\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/author\\\/admin\\\/#author\"},\"datePublished\":\"2017-03-19T02:12:52+02:00\",\"dateModified\":\"2017-03-19T02:12:52+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/\",\"name\":\"Marius Bancila's Blog\",\"description\":\"About code. Mostly on C++\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mariusbancila.ro\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"TDD with Live Unit Testing in Visual Studio 2017","description":"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.","canonical_url":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/","robots":"max-image-preview:large","keywords":"visualstudio,vs2017,testing,tdd","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#article","name":"TDD with Live Unit Testing in Visual Studio 2017","headline":"TDD with Live Unit Testing in Visual Studio 2017","author":{"@id":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/#author"},"publisher":{"@id":"https:\/\/mariusbancila.ro\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/mariusbancila.ro\/blog\/wp-content\/uploads\/2017\/03\/livetest01.png","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#articleImage","width":318,"height":253},"datePublished":"2017-03-19T02:12:52+02:00","dateModified":"2017-03-19T02:12:52+02:00","inLanguage":"en-US","commentCount":1,"mainEntityOfPage":{"@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#webpage"},"isPartOf":{"@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#webpage"},"articleSection":".NET, C#, Tools, Visual Studio, TDD, testing, VisualStudio, VS2017"},{"@type":"BreadcrumbList","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/#listItem","position":1,"name":"Home","item":"https:\/\/mariusbancila.ro\/blog\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/#listItem","name":"IT"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/#listItem","position":2,"name":"IT","item":"https:\/\/mariusbancila.ro\/blog\/category\/it\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/#listItem","name":"Software"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/#listItem","position":3,"name":"Software","item":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/#listItem","name":".NET"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/#listItem","name":"IT"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/#listItem","position":4,"name":".NET","item":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/csharp\/#listItem","name":"C#"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/#listItem","name":"Software"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/csharp\/#listItem","position":5,"name":"C#","item":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/csharp\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#listItem","name":"TDD with Live Unit Testing in Visual Studio 2017"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/#listItem","name":".NET"}},{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#listItem","position":6,"name":"TDD with Live Unit Testing in Visual Studio 2017","previousItem":{"@type":"ListItem","@id":"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/csharp\/#listItem","name":"C#"}}]},{"@type":"Organization","@id":"https:\/\/mariusbancila.ro\/blog\/#organization","name":"Marius Bancila's Blog","description":"About code. Mostly on C++","url":"https:\/\/mariusbancila.ro\/blog\/"},{"@type":"Person","@id":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/#author","url":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/","name":"Marius Bancila","image":{"@type":"ImageObject","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/a84dd2831d955c38355ddea55df4df260809b88f36408bc14fd4eab8f7f131c9?s=96&d=mm&r=g","width":96,"height":96,"caption":"Marius Bancila"}},{"@type":"WebPage","@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#webpage","url":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/","name":"TDD with Live Unit Testing in Visual Studio 2017","description":"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mariusbancila.ro\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/#breadcrumblist"},"author":{"@id":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/#author"},"creator":{"@id":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/#author"},"datePublished":"2017-03-19T02:12:52+02:00","dateModified":"2017-03-19T02:12:52+02:00"},{"@type":"WebSite","@id":"https:\/\/mariusbancila.ro\/blog\/#website","url":"https:\/\/mariusbancila.ro\/blog\/","name":"Marius Bancila's Blog","description":"About code. Mostly on C++","inLanguage":"en-US","publisher":{"@id":"https:\/\/mariusbancila.ro\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Marius Bancila's Blog | About code. Mostly on C++","og:type":"article","og:title":"TDD with Live Unit Testing in Visual Studio 2017","og:description":"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.","og:url":"https:\/\/mariusbancila.ro\/blog\/2017\/03\/19\/tdd-with-live-unit-testing-in-visual-studio-2017\/","article:published_time":"2017-03-19T00:12:52+00:00","article:modified_time":"2017-03-19T00:12:52+00:00","twitter:card":"summary","twitter:title":"TDD with Live Unit Testing in Visual Studio 2017","twitter:description":"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development."},"aioseo_meta_data":{"post_id":"2384","title":"TDD with Live Unit Testing in Visual Studio 2017","description":"This article shows how Live Unit Testing in Visual Studio 2017 help you doing test driven development.","keywords":[{"label":"VisualStudio","value":"VisualStudio"},{"label":"VS2017","value":"VS2017"},{"label":"testing","value":"testing"},{"label":"TDD","value":"TDD"}],"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2021-03-18 21:07:10","updated":"2025-12-12 07:45:21","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"author_meta":{"display_name":"Marius Bancila","author_link":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/"},"featured_img":null,"jetpack_publicize_connections":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Marius Bancila","author_link":"https:\/\/mariusbancila.ro\/blog\/author\/admin\/"},"uagb_comment_info":1,"uagb_excerpt":"Visual Studio 2017 Enterprise provides a feature called Live Unit Testing that enables developers to see live how changing C# and VB.NET code affects its corresponding unit tests. Among its features, it includes showing coverage information in the editor as you type, integration with the Test Explorer, including\/excluding targeted test methods or projects for large&hellip;","coauthors":[],"tax_additional":{"categories":{"linked":["<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/\" class=\"advgb-post-tax-term\">.NET<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/net\/csharp\/\" class=\"advgb-post-tax-term\">C#<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/tools\/\" class=\"advgb-post-tax-term\">Tools<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/visual-studio\/\" class=\"advgb-post-tax-term\">Visual Studio<\/a>"],"unlinked":["<span class=\"advgb-post-tax-term\">.NET<\/span>","<span class=\"advgb-post-tax-term\">C#<\/span>","<span class=\"advgb-post-tax-term\">Tools<\/span>","<span class=\"advgb-post-tax-term\">Visual Studio<\/span>"]},"tags":{"linked":["<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/visual-studio\/\" class=\"advgb-post-tax-term\">TDD<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/visual-studio\/\" class=\"advgb-post-tax-term\">testing<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/visual-studio\/\" class=\"advgb-post-tax-term\">VisualStudio<\/a>","<a href=\"https:\/\/mariusbancila.ro\/blog\/category\/it\/software\/visual-studio\/\" class=\"advgb-post-tax-term\">VS2017<\/a>"],"unlinked":["<span class=\"advgb-post-tax-term\">TDD<\/span>","<span class=\"advgb-post-tax-term\">testing<\/span>","<span class=\"advgb-post-tax-term\">VisualStudio<\/span>","<span class=\"advgb-post-tax-term\">VS2017<\/span>"]}},"comment_count":"1","relative_dates":{"created":"Posted 10 years ago","modified":"Updated 10 years ago"},"absolute_dates":{"created":"Posted on March 19, 2017","modified":"Updated on March 19, 2017"},"absolute_dates_time":{"created":"Posted on March 19, 2017 2:12 am","modified":"Updated on March 19, 2017 2:12 am"},"featured_img_caption":"","series_order":"","jetpack_shortlink":"https:\/\/wp.me\/pYNdv-Cs","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/posts\/2384","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/comments?post=2384"}],"version-history":[{"count":8,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/posts\/2384\/revisions"}],"predecessor-version":[{"id":2412,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/posts\/2384\/revisions\/2412"}],"wp:attachment":[{"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/media?parent=2384"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/categories?post=2384"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mariusbancila.ro\/blog\/wp-json\/wp\/v2\/tags?post=2384"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}