{"id":2930,"date":"2017-03-10T08:01:11","date_gmt":"2017-03-10T16:01:11","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2930"},"modified":"2025-06-13T19:29:17","modified_gmt":"2025-06-14T02:29:17","slug":"visual-studio-live-unit-testing-2017","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/visual-studio-live-unit-testing-2017\/","title":{"rendered":"Pruebas unitarias en vivo de Visual Studio: Nuevo en Visual Studio 2017"},"content":{"rendered":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p><a href=\"https:\/\/www.visualstudio.com\/en-us\/news\/releasenotes\/vs2017-relnotes\">Visual Studio 2017<\/a> acaba de ser lanzado oficialmente. Viene con un mont\u00f3n de cosas nuevas y geniales, pero una de mis nuevas caracter\u00edsticas favoritas es Visual Studio Live Unit Testing integrado (disponible en Visual Studio 2017 Enterprise, a\u00fan no disponible para proyectos .NET Core).<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>En este post, voy a mostrarte c\u00f3mo funciona Visual Studio Live Unit Testing, as\u00ed como algunas reflexiones sobre el uso de pruebas unitarias vs. pruebas de unidad. <a href=\"https:\/\/www.couchbase.com\/blog\/es\/integration-tests-couchbase-application\/\">pruebas de integraci\u00f3n<\/a>. Puedes seguirlo obteniendo el c\u00f3digo fuente completo de este <a href=\"https:\/\/github.com\/couchbaselabs\/blog-source-code\/tree\/master\/Groves\/057VisualStudioContinuousTesting\/src\/LiveUnitTesting\">Ejemplo de pruebas unitarias en GitHub<\/a>.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_visual_studio_live_unit_testing_with_nunit\">Pruebas unitarias en vivo de Visual Studio con NUnit<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>NUnit es quiz\u00e1s la herramienta de pruebas m\u00e1s popular para los desarrolladores C#\/.NET. Visual Studio Live Unit Testing tambi\u00e9n puede trabajar con xUnit y MSTest, pero para este post voy a cubrir s\u00f3lo NUnit.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Para usar NUnit, lo a\u00f1ades con NuGet, como de costumbre. Para utilizar Visual Studio Live Testing, tambi\u00e9n tendr\u00e1 que a\u00f1adir el m\u00f3dulo <a href=\"https:\/\/www.nuget.org\/packages\/NUnit3TestAdapter\">Adaptador de pruebas NUnit<\/a> (<code>Install-Package NUnite3TestAdapter<\/code>).<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>A continuaci\u00f3n, inicie Live Testing haciendo clic en Test \u2192 Live Unit Testing \u2192 Start.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/03\/057_01_EnableLiveUnitTesting.gif\" alt=\"Start Visual Studio Live Unit Testing\" \/><\/span><\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_writing_a_unit_test\">Escribir una prueba unitaria<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Necesitaremos algunas pruebas unitarias para demostrarlo. Podr\u00edamos hacer <code>Assert.That(1, Es.IgualA(1))<\/code>pero, \u00bfd\u00f3nde est\u00e1 la diversi\u00f3n en eso? Vamos a crear una clase de carrito de compras.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">public clase ShoppingCart\r\n{\r\n    public string NombreUsuario { get; set; }\r\n    public DateTime LastUpdated { get; set; }\r\n    public List Items { get; set; }\r\n    public decimal Total\r\n    {\r\n        get { return Art\u00edculos.Suma(i =&gt; i.Precio); }\r\n    }\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Este carrito de la compra tiene un par de propiedades, y una colecci\u00f3n de art\u00edculos en \u00e9l. F\u00edjese en <code>Total<\/code> propiedad. Los lectores astutos ya pueden notar algunos problemas con ella, pero vamos a empezar con una simple prueba unitaria para asegurarnos de que calcula un total.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">[Prueba]\r\npublic void Cesta_Compra_Total_Debe_Sumar_los_precios_de_los_art\u00edculos()\r\n{\r\n    \/\/ organizar: crear un carrito de la compra con 2 art\u00edculos y calcular el total esperado\r\n    var item1 = new Item { Nombre = \"Pizza Grande de Pepperoni\", Precio = 14.99M };\r\n    var item2 = new Item { Nombre = \"Palitos de Queso\", Precio = 4.99M };\r\n    var totalesperado = item1.Precio + item2.Precio;\r\n    var cart = new ShoppingCart { Items = new List { item1, item2 } };\r\n\r\n    \/\/ act: usa el m\u00e9todo Total en ShoppingCart\r\n    var totalreal = carrito.total;\r\n\r\n    \/\/ assert: los totales deben coincidir\r\n    Assert.That(actualTotal, Is.EqualTo(expectedTotal));\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Si la prueba unitaria en vivo est\u00e1 activada, Visual Studio ejecuta autom\u00e1ticamente la prueba en segundo plano. Usted debe ver algunas marcas verdes aparecen.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/03\/057_02_LiveUnitTest.gif\" alt=\"Visual Studio Live Unit Testing in action\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Las marcas verdes tambi\u00e9n aparecer\u00e1n siempre que el c\u00f3digo que se est\u00e1 probando est\u00e9 cubierto.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/03\/057_03_CodeUnderTest.png\" alt=\"Visual Studio Live Unit Testing code under test\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Con Visual Studio Live Unit Testing, no tienes que detenerte para ejecutar las pruebas. Mientras codificas, las pruebas se ejecutar\u00e1n y te dar\u00e1n informaci\u00f3n inmediata sobre si tu c\u00f3digo est\u00e1 haciendo que las pruebas fallen (o si has escrito suficiente c\u00f3digo para hacer que tu prueba pase).<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Sobre todo, esto le animar\u00e1 a escribir m\u00e1s pruebas.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_what_are_integration_tests\">\u00bfQu\u00e9 son las pruebas de integraci\u00f3n?<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Cuando se escriben pruebas unitarias, se pretende probar un peque\u00f1o fragmento de c\u00f3digo por s\u00ed solo. Para el c\u00f3digo que interact\u00faa con alg\u00fan servicio externo (un servicio web, una base de datos, un sistema de archivos, etc.), a menudo se simulan esas piezas, para que pueda centrarse en la unidad.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Tambi\u00e9n puede escribir pruebas de integraci\u00f3n con NUnit. Pruebas de integraci\u00f3n que pretenden ir m\u00e1s all\u00e1 de probar una sola unidad de c\u00f3digo, y probar que los sistemas funcionan juntos. Escribamos un m\u00e9todo que escriba un registro en Couchbase Server. Esta prueba utilizar\u00e1 una base de datos real, por lo tanto podemos considerarla una prueba de integraci\u00f3n.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">public void GuardarCarroDeCompras(CarroDeCompras)\r\n{\r\n    _bucket.Insert(new Document\r\n    {\r\n        Id = Guid.NewGuid().ToString(),\r\n        Contenido = carrito\r\n    });\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Este m\u00e9todo deber\u00eda guardar un carrito de la compra en un documento en Couchbase Server. Para asegurarnos de que funciona, podemos escribir un test NUnit.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-C#\">[Prueba]\r\npublic void Repo_Can_Save_a_New_Shopping_Cart_to_Database()\r\n{\r\n    \/\/ organizar: crear una cesta de la compra\r\n    var cart = new ShoppingCart\r\n    {\r\n        UserName = \"Matthew \" + Guid.NewGuid().ToString(),\r\n        LastUpdated = DateTime.Now\r\n    };\r\n\r\n    \/\/ act: guardar el carrito de la compra en la base de datos\r\n    Repo.SaveShoppingCart(carrito);\r\n\r\n    \/\/ assert: comprueba que el carrito se ha guardado\r\n    var cartBackOut = Repo.GetCartByUserName(cart.UserName);\r\n    Assert.That(carritoBackOut, Is.Not.Null);\r\n    Assert.That(cartBackOut.UserName, Is.EqualTo(cart.UserName));\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p><em>Nota: Para mantener este post simple, he omitido algunos de los detalles del repositorio, y la configuraci\u00f3n de prueba. Usted puede ver todo esto en <a href=\"https:\/\/github.com\/couchbaselabs\/blog-source-code\/tree\/master\/Groves\/057VisualStudioContinuousTesting\/src\/LiveUnitTesting\">el repositorio GitHub<\/a>.<\/em><\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_integration_test_with_visual_studio_live_unit_testing\">Pruebas de integraci\u00f3n con Visual Studio Live Unit Testing<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Visual Studio Live Unit Testing ejecutar\u00e1 felizmente esta prueba de unidad. Es posible que no desee que este tipo de pruebas se ejecuten autom\u00e1ticamente en segundo plano porque:<\/p>\n<\/div>\n<div class=\"olist arabic\">\n<ol class=\"arabic\">\n<li>Si no tienes Couchbase Server instalado, o un bucket creado e indexado, entonces fallar\u00e1n.<\/li>\n<li>Si tienes muchas pruebas que dependen de componentes externos, podr\u00edan ralentizar las pruebas (leer\/escribir documentos en Couchbase es muy r\u00e1pido, pero configurar un <code>Grupo<\/code> para cada prueba o banco de pruebas).<\/li>\n<li>Estas pruebas podr\u00edan a\u00f1adir un mont\u00f3n de datos de prueba basura innecesarios a su base de datos.<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_excluding_integration_tests_from_visual_studio_live_unit_testing\">Excluir las pruebas de integraci\u00f3n de las pruebas unitarias de Visual Studio Live<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Para excluir pruebas de Live Unit Testing, basta con hacer clic con el bot\u00f3n derecho del rat\u00f3n en el archivo de prueba y seleccionar \"Excluir\" en el men\u00fa contextual.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/03\/057_04_ExcludeFromLiveUnitTest.gif\" alt=\"Exclude from Live Unit Testing\" \/><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Despu\u00e9s de esto, ninguna de las pruebas en ese archivo ser\u00e1 ejecutada por Live Unit Testing. Tambi\u00e9n puede excluir un proyecto entero. Por lo tanto, si organiza las pruebas unitarias y las pruebas de integraci\u00f3n en proyectos separados, entonces est\u00e1 todo listo.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Si usted <em>no<\/em> organizarlos en proyectos separados, entonces este proceso podr\u00eda ser un poco tedioso. Adem\u00e1s, la informaci\u00f3n de Incluir\/Excluir es una configuraci\u00f3n local que no puede (en el momento en que estoy escribiendo esto, y que yo sepa) comprometerse con el control de c\u00f3digo fuente.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>As\u00ed que, despu\u00e9s de preguntar por <a href=\"https:\/\/stackoverflow.com\/questions\/42657226\/visual-studio-2017-live-testing-exclusions\">Exclusi\u00f3n de pruebas en vivo en StackOverflow<\/a>He creado un atributo que se puede colocar en las pruebas para excluirlas de las pruebas en vivo.<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-c#\">public class IgnoreForLiveTesting : Atributo, ITestAcci\u00f3n\r\n{\r\n    readonly string _ignoreReason;\r\n\r\n    public IgnoreForLiveTesting(cadena ignoreReason = null)\r\n    {\r\n        _ignoreReason = ignoreReason;\r\n    }\r\n\r\n    public ActionTargets Targets { get; set; }\r\n\r\n    public void AfterTest(ITest test) { }\r\n\r\n    public void BeforeTest(ITest test)\r\n    {\r\n        var isLiveTesting = AppDomain.CurrentDomain.GetAssemblies()\r\n            .Any(a =&gt; a.GetName().Name == \"Microsoft.CodeAnalysis.LiveUnitTesting.Runtime\");\r\n        if (isLiveTesting)\r\n            Assert.Ignore(_ignoreReason ?? \"Ignorando esta prueba\");\r\n    }\r\n}<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Este atributo implementa la funci\u00f3n <code>ITestAction<\/code> (que es algo as\u00ed como la Programaci\u00f3n Orientada a Aspectos\/AOP para NUnit, pero ese es un tema para otra entrada del blog). Comprobar\u00e1 si est\u00e1 siendo ejecutado por un <code>LiveUnitTesting<\/code> proceso. Si lo es, indica a NUnit que ignore la prueba.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Adem\u00e1s, he a\u00f1adido un <code>ignoreReason<\/code> al constructor, para que pueda a\u00f1adir una nota \u00fatil a otras personas de su equipo para explicar por qu\u00e9 esta prueba no debe ejecutarse con Live Unit Testing. Puede utilizarlo en una prueba de integraci\u00f3n as\u00ed:<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight decode:true\"><code class=\"language-c#\">[IgnoreForLiveTesting(\"Prueba de integraci\u00f3n\")]<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_summary\">Resumen<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>No estoy muy contento con este m\u00e9todo, ya que es espec\u00edfico de NUnit, y no es exactamente lo que esperaba con Visual Studio Live Unit Testing. Pero en este momento creo que \"el jugo vale la pena el apret\u00f3n\". Live Unit Testing es una caracter\u00edstica tan grande para escribir c\u00f3digo, especialmente Test-Driven Development (TDD), que vale la pena tener que escribir y utilizar un atributo especial de NUnit.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Si conoce una forma mejor de conseguirlo, quiero saberlo. D\u00e9jeme un comentario a continuaci\u00f3n o env\u00edeme un ping a <a href=\"https:\/\/twitter.com\/mgroves\">Twitter @mgroves<\/a>.<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Si tienes preguntas sobre el c\u00f3digo de Couchbase que has visto en este post, estar\u00e9 encantado de ayudarte. Tambi\u00e9n puedes consultar la comunidad de Couchbase en el sitio web <a href=\"https:\/\/www.couchbase.com\/blog\/es\/forums\/c\/net-sdk\/\">Foro del SDK .NET de Couchbase<\/a>. Si desea obtener m\u00e1s informaci\u00f3n sobre Couchbase, consulte la p\u00e1gina <a href=\"https:\/\/www.couchbase.com\/blog\/es\/developers\/\">Portal para desarrolladores de Couchbase<\/a>.<\/p>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Visual Studio 2017 was just officially released. It comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing (available in Visual Studio 2017 Enterprise, not yet available for [&hellip;]<\/p>","protected":false},"author":71,"featured_media":2931,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1811,1816],"tags":[1877,1772],"ppma_author":[8937],"class_list":["post-2930","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dotnet","category-couchbase-server","tag-testing","tag-visual-studio"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Visual Studio Live Unit Testing: New to Visual Studio 2017<\/title>\n<meta name=\"description\" content=\"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/es\/visual-studio-live-unit-testing-2017\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Visual Studio Live Unit Testing: New to Visual Studio 2017\" \/>\n<meta property=\"og:description\" content=\"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/visual-studio-live-unit-testing-2017\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-10T16:01:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T02:29:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Matthew Groves\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@mgroves\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matthew Groves\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/\"},\"author\":{\"name\":\"Matthew Groves\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\"},\"headline\":\"Visual Studio Live Unit Testing: New to Visual Studio 2017\",\"datePublished\":\"2017-03-10T16:01:11+00:00\",\"dateModified\":\"2025-06-14T02:29:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/\"},\"wordCount\":1004,\"commentCount\":3,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg\",\"keywords\":[\"testing\",\"Visual Studio\"],\"articleSection\":[\".NET\",\"Couchbase Server\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/\",\"name\":\"Visual Studio Live Unit Testing: New to Visual Studio 2017\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg\",\"datePublished\":\"2017-03-10T16:01:11+00:00\",\"dateModified\":\"2025-06-14T02:29:17+00:00\",\"description\":\"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg\",\"width\":960,\"height\":720,\"caption\":\"Testing - licensed through Creative Commons - https:\/\/pixabay.com\/en\/test-testing-exam-sat-act-mcat-986769\/\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Visual Studio Live Unit Testing: New to Visual Studio 2017\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58\",\"name\":\"Matthew Groves\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g\",\"caption\":\"Matthew Groves\"},\"description\":\"Matthew D. Groves is a guy who loves to code. It doesn't matter if it's C#, jQuery, or PHP: he'll submit pull requests for anything. He has been coding professionally ever since he wrote a QuickBASIC point-of-sale app for his parent's pizza shop back in the 90s. He currently works as a Senior Product Marketing Manager for Couchbase. His free time is spent with his family, watching the Reds, and getting involved in the developer community. He is the author of AOP in .NET, Pro Microservices in .NET, a Pluralsight author, and a Microsoft MVP.\",\"sameAs\":[\"https:\/\/crosscuttingconcerns.com\",\"https:\/\/x.com\/mgroves\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/matthew-groves\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Pruebas unitarias en vivo de Visual Studio: Nuevo en Visual Studio 2017","description":"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/es\/visual-studio-live-unit-testing-2017\/","og_locale":"es_MX","og_type":"article","og_title":"Visual Studio Live Unit Testing: New to Visual Studio 2017","og_description":"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing","og_url":"https:\/\/www.couchbase.com\/blog\/es\/visual-studio-live-unit-testing-2017\/","og_site_name":"The Couchbase Blog","article_published_time":"2017-03-10T16:01:11+00:00","article_modified_time":"2025-06-14T02:29:17+00:00","og_image":[{"width":960,"height":720,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg","type":"image\/jpeg"}],"author":"Matthew Groves","twitter_card":"summary_large_image","twitter_creator":"@mgroves","twitter_misc":{"Written by":"Matthew Groves","Est. reading time":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/"},"author":{"name":"Matthew Groves","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58"},"headline":"Visual Studio Live Unit Testing: New to Visual Studio 2017","datePublished":"2017-03-10T16:01:11+00:00","dateModified":"2025-06-14T02:29:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/"},"wordCount":1004,"commentCount":3,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg","keywords":["testing","Visual Studio"],"articleSection":[".NET","Couchbase Server"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/","url":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/","name":"Pruebas unitarias en vivo de Visual Studio: Nuevo en Visual Studio 2017","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg","datePublished":"2017-03-10T16:01:11+00:00","dateModified":"2025-06-14T02:29:17+00:00","description":"Visual Studio 2017 comes with a lot of new, great stuff, but one of my favorite new features is built-in Visual Studio Live Unit Testing","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/057_Hero_Testing.jpg","width":960,"height":720,"caption":"Testing - licensed through Creative Commons - https:\/\/pixabay.com\/en\/test-testing-exam-sat-act-mcat-986769\/"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/visual-studio-live-unit-testing-2017\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Visual Studio Live Unit Testing: New to Visual Studio 2017"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3929663e372020321b0152dc4fa65a58","name":"Matthew Groves","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/ba51e6aacc53995c323a634e4502ef54","url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","caption":"Matthew Groves"},"description":"A Matthew D. Groves le encanta programar. No importa si se trata de C#, jQuery o PHP: enviar\u00e1 pull requests para cualquier cosa. Lleva codificando profesionalmente desde que escribi\u00f3 una aplicaci\u00f3n de punto de venta en QuickBASIC para la pizzer\u00eda de sus padres, all\u00e1 por los a\u00f1os noventa. Actualmente trabaja como Director de Marketing de Producto para Couchbase. Su tiempo libre lo pasa con su familia, viendo a los Reds y participando en la comunidad de desarrolladores. Es autor de AOP in .NET, Pro Microservices in .NET, autor de Pluralsight y MVP de Microsoft.","sameAs":["https:\/\/crosscuttingconcerns.com","https:\/\/x.com\/mgroves"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/matthew-groves\/"}]}},"authors":[{"term_id":8937,"user_id":71,"is_guest":0,"slug":"matthew-groves","display_name":"Matthew Groves","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/70feb1b28a099ad0112b8d21fe1e81e1a4524beed3e20b7f107d5370e85a07ab?s=96&d=mm&r=g","author_category":"","last_name":"Groves","first_name":"Matthew","job_title":"","user_url":"https:\/\/crosscuttingconcerns.com","description":"A Matthew D. Groves le encanta programar.  No importa si se trata de C#, jQuery o PHP: enviar\u00e1 pull requests para cualquier cosa.  Lleva codificando profesionalmente desde que escribi\u00f3 una aplicaci\u00f3n de punto de venta en QuickBASIC para la pizzer\u00eda de sus padres, all\u00e1 por los a\u00f1os noventa.  Actualmente trabaja como Director de Marketing de Producto para Couchbase. Su tiempo libre lo pasa con su familia, viendo a los Reds y participando en la comunidad de desarrolladores.  Es autor de AOP in .NET, Pro Microservices in .NET, autor de Pluralsight y MVP de Microsoft."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2930","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=2930"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2930\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/2931"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=2930"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=2930"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=2930"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=2930"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}