# 10.1 Agregando el proyecto de pruebas unitarias

Vamos a agregar nuestro proyecto de pruebas unitarias, los más comunes son xUnit, MSTest, NUnit. En mi caso utilizaré **XUnit** ya que es el que tiene mas tiempo. Para pruebas de integración utilizare **MSTest** que es de Microsoft.&#x20;

## Agregando el proyecto de pruebas unitarias en Windows

1. Da clic con el botón derecho del mouse en la solución y da clic en la opción **Agregar** -> **Nuevo Proyecto**

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKmGSg4qhizjqeDPHJC%2F-LsI2UlMHxnjCS9MNxml%2F-LsI3iu629O6yPcrNLp9%2Fimage.png?alt=media\&token=3f2a6982-697e-43c9-8ab8-139a9741c4ab)

2\. En la barra superior puedes buscar por medio del nombre. Teclea la palabra prueba para que veas los diferentes tipos de prueba. Selecciona **Proyecto de pruebas xUnit (.Net Core)**

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKmGSg4qhizjqeDPHJC%2F-LsI4OwrTvPnIc-8s2n0%2F-LsI55oCIbBAv_Ndq1bs%2Fimage.png?alt=media\&token=ef977a93-8386-46fb-a72d-9f9412c7e95e)

3\. Como nombre de proyecto teclea **CaducaRest.UnitTest** de esta forma indicamos que son pruebas con unitarias para el proyecto CaducaRest y da clic en el botón Crear

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKmGSg4qhizjqeDPHJC%2F-LsI4OwrTvPnIc-8s2n0%2F-LsI5e1XDp2KezKO0Ahj%2Fimage.png?alt=media\&token=49e94cd0-782b-4f38-9c33-797c95cdb1d0)

Esto nos crea el proyecto con una clase llamada **Unitest1.cs** con un atributo **\[Fact]** en xUnit se agrega este atributo a las clases que formarán parte de las prueba unitarias

Agrega el nuget **coverlet.msbuild** para generar un análisis de tu código

## Agregando el proyecto de pruebas unitarias en Mac

1. En nuestra solución damos clic con el botón derecho del mouse, luego en **Agregar** ->**Nuevo proyecto...**\ <br>

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LKmGSg4qhizjqeDPHJC%2Fuploads%2Fhje0xJuZnTqKnQ3ghUHv%2Fimage.png?alt=media\&token=355e5c76-0f4a-4c4e-9136-feba23174805)

En **Web y consola** -> **Pruebas** -> **Proyecto de prueba de xUnit** y damos clic en **Continuar**

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LKmGSg4qhizjqeDPHJC%2Fuploads%2FXgZkr6ugGmgfgdLW0me2%2Fimage.png?alt=media\&token=79615e59-cd57-4db7-a810-952c4ffa4503)

En plataforma de destino seleccionamos .NET 6.0 y damos clic en continuar

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LKmGSg4qhizjqeDPHJC%2Fuploads%2Fq6V7u1HSoTcmmVxhjLbR%2Fimage.png?alt=media\&token=ee30a227-0db3-4097-9f99-c806e77508d1)

Como nombre de proyecto tecleamos **xUnit.CaducaRest** y damos clic en **Crear**

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LKmGSg4qhizjqeDPHJC%2Fuploads%2FNREPFZ6TD2b8MwkQegHA%2Fimage.png?alt=media\&token=08934708-870d-4b7d-84a4-d4d3c3fa730a)

Esto nos crea el proyecto con una clase llamada Unitest1.cs con un atributo **\[Fact]** en xUnit se agrega este atributo a las clases que formarán parte de las prueba unitarias

![](https://3731331968-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LKmGSg4qhizjqeDPHJC%2F-Ls-zzZ9KtPYBy9AMirG%2F-Ls02fmnNZBFUNhRAj3m%2Fimage.png?alt=media\&token=ed226138-a233-4fc5-8356-ef09be254c7a)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://abi.gitbook.io/net-core/8.-pruebas-unitarias/8.1-agregando-el-proyecto-de-pruebas-unitarias.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
