{"id":2515,"date":"2017-07-26T04:09:06","date_gmt":"2017-07-25T20:09:06","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vsnews\/?p=2515"},"modified":"2017-07-26T04:09:06","modified_gmt":"2017-07-25T20:09:06","slug":"e0q3mx","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/vsnews\/akams-e0q3mx\/","title":{"rendered":"Extending MSTest V2"},"content":{"rendered":"<p>APIs are assets. As developers we learn them, write to them, and \u2013 if the API are extensible \u2013 we grow them. An extensible API removes barriers to introducing new abstractions closer to our own domains. Once such abstractions are in place, they in turn allow us to work with the underlying framework in a more fluent manner. Extensibility therefore has been a goal for the MSTest V2 Test Framework API.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>APIs are assets. As developers we learn them, write to them, and \u2013 if the API are extensible \u2013 we grow them. An extensible API removes barriers to introducing new abstractions closer to our own domains. Once such abstractions are in place, they in turn allow us to work with the underlying framework in a [&hellip;]<\/p>\n","protected":false},"author":27,"featured_media":8227,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[3],"tags":[],"class_list":["post-2515","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allskus"],"acf":[],"blog_post_summary":"<p>APIs are assets. As developers we learn them, write to them, and \u2013 if the API are extensible \u2013 we grow them. An extensible API removes barriers to introducing new abstractions closer to our own domains. Once such abstractions are in place, they in turn allow us to work with the underlying framework in a [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts\/2515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/comments?post=2515"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/posts\/2515\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/media\/8227"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/media?parent=2515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/categories?post=2515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/vsnews\/wp-json\/wp\/v2\/tags?post=2515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}