{"id":3692,"date":"2026-05-12T09:59:31","date_gmt":"2026-05-12T13:59:31","guid":{"rendered":"https:\/\/xceed.com\/?p=3692"},"modified":"2026-05-12T09:59:33","modified_gmt":"2026-05-12T13:59:33","slug":"fluentassertions-8-10-beequivalentto-mejoras","status":"publish","type":"post","link":"https:\/\/xceed.com\/es\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/","title":{"rendered":"FluentAssertions 8.10: Cuatro mejoras en BeEquivalentTo que realmente sentir\u00e1s"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"3692\" class=\"elementor elementor-3692\" wpc-filter-elementor-widget=\"1\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-63bf27f e-flex e-con-boxed e-con e-parent\" data-id=\"63bf27f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9247f33 elementor-widget elementor-widget-html\" data-id=\"9247f33\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:22px 24px;margin:0 0 30px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <p style=\"margin:0 0 14px 0;\"><strong>FluentAssertions 8.10: Mejoras de calidad de vida en equivalencia (Nulo como vac\u00edo, mejores diagn\u00f3sticos, coincidencia desordenada m\u00e1s r\u00e1pida)<\/strong><\/p>\n  <p style=\"margin:0;\">FluentAssertions 8.10 parece peque\u00f1o sobre el papel, pero apunta al lugar exacto donde la mayor\u00eda de los conjuntos de pruebas sienten dolor: las comparaciones de equivalencia y los diagn\u00f3sticos en los que conf\u00edas cuando fallan. Si usas <strong style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;\">SerEquivalenteA<\/strong> con (DTOs, contratos de API, grafos de objetos anidados), estos cambios reducen el ruido, mejoran la legibilidad de los fallos y aceleran los casos lentos.<\/p>\n<\/div>\n\n<p>A continuaci\u00f3n se presentan los cuatro puntos clave y los cambios que implican en la redacci\u00f3n de pruebas diarias.<\/p>\n\n<h2 style=\"margin-top:40px;color:#f26522;\">1) #3202 \u2014 Agregar ComparingNullCollectionsAsEmpty y ComparingNullStringsAsEmpty a BeEquivalentTo<\/h2>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">\u00bfQu\u00e9 cambi\u00f3?<\/h3>\n  <p style=\"margin:0;line-height:1.6;\">\n    FluentAssertions 8.10 agrega dos nuevas opciones de equivalencia as\u00ed que <strong style=\"color:#f26522;\">null<\/strong> las colecciones coinciden\n    <strong style=\"color:#f26522;\">vac\u00edo<\/strong> colecciones, y <strong style=\"color:#f26522;\">null<\/strong> las cadenas pueden coincidir\n    <strong style=\"color:#f26522;\">vac\u00edo<\/strong> cadenas.\n  <\/p>\n  <div style=\"margin-top:10px;line-height:1.7;color:#1f2937;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:0.98em;\">\n    Comparando colecciones nulas como vac\u00edas<br\/>\n    Comparando Cadenas Nulas como Vac\u00edas\n  <\/div>\n<\/div>\n\n<p><strong>Por qu\u00e9 esto importa<\/strong><\/p>\n\n<p>En muchos sistemas, nulo vs. vac\u00edo no es una distinci\u00f3n significativa. Las APIs omiten campos, los serializadores producen nulos y las capas de mapeo pueden devolver colecciones nulas incluso cuando la l\u00f3gica de negocio las trata como vac\u00edas. Estas discrepancias sol\u00edan crear pruebas fr\u00e1giles o forzar una pre-normalizaci\u00f3n.<\/p>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">Detalle clave: grafos de objetos sim\u00e9tricos y anidados<\/h3>\n  <p style=\"margin:0;line-height:1.6;\">\n    El comportamiento es <strong style=\"color:#f26522;\">sim\u00e9trico<\/strong> (funciona en ambos lados de la comparaci\u00f3n) y tambi\u00e9n se aplica\n    por dentro <strong style=\"color:#f26522;\">gr\u00e1ficos de objetos anidados<\/strong>. Si una propiedad anidada es nula en un lado y vac\u00eda en el otro, a\u00fan puede coincidir cuando la opci\u00f3n est\u00e1 habilitada.\n  <\/p>\n<\/div>\n\n<h2 style=\"margin-top:42px;color:#f26522;\">2) #3203 \u2014 Incluir el \u00edndice original en los mensajes de error por elementos extra\u00f1os<\/h2>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">\u00bfQu\u00e9 cambi\u00f3?<\/h3>\n  <p style=\"margin:0;line-height:1.6;\">\n    Las fallas de equivalencia para colecciones con elementos adicionales ahora son m\u00e1s procesables. Los mensajes de falla incluyen el\n    <strong style=\"color:#f26522;\">\u00edndice original<\/strong> de cada elemento externo en el tema.\n  <\/p>\n<\/div>\n\n<p><strong>Por qu\u00e9 esto importa<\/strong><\/p>\n\n<p>Cuando se ignora el orden y las reglas de coincidencia son complejas, los fallos de \u201celemento extra\u201d son de los que consumen m\u00e1s tiempo para depurar. Con el \u00edndice original incluido, puedes ir directamente al elemento problem\u00e1tico, lo cual es especialmente \u00fatil para colecciones grandes producidas por pipelines.<\/p>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">Impacto pr\u00e1ctico<\/h3>\n  <ul style=\"padding-left:22px;margin:0;\">\n    <li style=\"margin-bottom:10px;\">Diagn\u00f3stico m\u00e1s r\u00e1pido de \u201c\u00bfpor qu\u00e9 hay un art\u00edculo adicional?\u201d<\/li>\n    <li style=\"margin-bottom:10px;\">Correlaci\u00f3n m\u00e1s sencilla con la l\u00f3gica LINQ, de filtrado y de uni\u00f3n de nivel superior<\/li>\n    <li>Menos tiempo imprimiendo colecciones completas en los registros<\/li>\n  <\/ul>\n<\/div>\n\n<h2 style=\"margin-top:42px;color:#f26522;\">3) #3188 \u2014 Aumenta significativamente la velocidad de BeEquivalentTo para colecciones grandes no ordenadas<\/h2>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">\u00bfQu\u00e9 cambi\u00f3?<\/h3>\n  <p style=\"margin:0;line-height:1.6;\">\n    El rendimiento mejora para comparaciones de equivalencia no ordenadas (especialmente con\n    <strong style=\"color:#f26522;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;\">SinOrdenEstricto()<\/strong>en colecciones grandes.\n  <\/p>\n<\/div>\n\n<p><strong>Por qu\u00e9 esto importa<\/strong><\/p>\n\n<p>Las comparaciones grandes y desordenadas son una fuente com\u00fan de pruebas lentas. El principal beneficio proviene de reemplazar la coincidencia costosa basada en permutaciones con una m\u00e1s escalable <strong>estrategia codiciosa<\/strong>, adem\u00e1s de reducciones en la asignaci\u00f3n y optimizaciones de ejecuci\u00f3n en seco. Efecto neto: menos tiempo esperando por suites con muchas equivalencias y menos quejas de \u201ces demasiado lento para ejecutarlo localmente\u201d.<\/p>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">Impacto pr\u00e1ctico<\/h3>\n  <ul style=\"padding-left:22px;margin:0;\">\n    <li style=\"margin-bottom:10px;\">Comparaciones desordenadas m\u00e1s r\u00e1pidas en colecciones grandes<\/li>\n    <li style=\"margin-bottom:10px;\">Mejor escalabilidad a medida que crecen los conjuntos de datos<\/li>\n    <li>Menor sobrecarga por menos asignaciones y menos retrocesos<\/li>\n  <\/ul>\n<\/div>\n\n<h2 style=\"margin-top:42px;color:#f26522;\">4) #3187 \u2014 Generar un error descriptivo cuando se utilizan reglas basadas en rutas en tipos con sem\u00e1ntica de valores<\/h2>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">\u00bfQu\u00e9 cambi\u00f3?<\/h3>\n  <p style=\"margin:0;line-height:1.6;\">\n    FluentAssertions resuelve un caso l\u00edmite de equivalencia confuso: reglas basadas en rutas como\n    <strong style=\"color:#f26522;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;\">Incluir()<\/strong>\n    y\n    <strong style=\"color:#f26522;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;\">Excluir()<\/strong>\n    que miembros de el objetivo <strong style=\"color:#f26522;\">tipos sem\u00e1nticos de valor<\/strong> fueron previamente ignorados silenciosamente.\n  <\/p>\n<\/div>\n\n<p><strong>Por qu\u00e9 esto importa<\/strong><\/p>\n\n<p>Los silencios autom\u00e1ticos en las pruebas son peligrosos: crees que has limitado la comparaci\u00f3n, pero la regla nunca se aplic\u00f3. Con la versi\u00f3n 8.10, estos casos ahora fallan expl\u00edcitamente con un error claro que explica por qu\u00e9 la regla no se aplica y c\u00f3mo resolverlo. Eso es una victoria en cuanto a correcci\u00f3n, especialmente para equipos que dependen de la configuraci\u00f3n basada en rutas para mantener las afirmaciones enfocadas.<\/p>\n\n<div style=\"background:linear-gradient(135deg,#fff4ec 0%,#fffaf7 100%);border-left:6px solid #f26522;padding:18px 20px;margin:18px 0;border-radius:12px;box-shadow:0 8px 24px rgba(242,101,34,0.10);\">\n  <h3 style=\"margin:0 0 10px 0;color:#f26522;font-weight:800;\">Impacto pr\u00e1ctico<\/h3>\n  <ul style=\"padding-left:22px;margin:0;\">\n    <li style=\"margin-bottom:10px;\">No m\u00e1s sorpresas silenciosas de \u201cla regla no aplicaba\u201d<\/li>\n    <li style=\"margin-bottom:10px;\">Retroalimentaci\u00f3n m\u00e1s clara cuando la configuraci\u00f3n no es v\u00e1lida<\/li>\n    <li>Reglas de equivalencia m\u00e1s confiables en suites grandes<\/li>\n  <\/ul>\n<\/div>\n\n<h2 style=\"margin-top:42px;color:#f26522;\">\u00bfQu\u00e9 hacer despu\u00e9s?<\/h2>\n\n<p>Si est\u00e1s actualizando a FluentAssertions 8.10, aqu\u00ed tienes una lista r\u00e1pida de verificaci\u00f3n:<\/p>\n\n<ul style=\"padding-left:22px;\">\n  <li style=\"margin-bottom:10px;\">Si tu dominio trata los valores faltantes como vac\u00edos, considera habilitar las opciones de null-as-empty.<\/li>\n  <li style=\"margin-bottom:10px;\">Si comparas colecciones grandes sin un orden estricto, espera ejecuciones m\u00e1s r\u00e1pidas y menos arrastre del conjunto de pruebas.<\/li>\n  <li style=\"margin-bottom:10px;\">Si usas reglas basadas en rutas intensivamente, ten cuidado con errores de configuraci\u00f3n reci\u00e9n expuestos (que antes se ignoraban).<\/li>\n  <li>Vuelve a ejecutar las pruebas con muchas equivalencias y confirma que los fallos son ahora m\u00e1s f\u00e1ciles de diagnosticar.<\/li>\n<\/ul>\n\n<h2 style=\"margin-top:42px;color:#f26522;\"><\/h2>\n\n<div style=\"text-align:center;padding:36px 24px;margin:36px 0;\">\n  <div style=\"background:#fff4ec;border:1px solid #f3d7c9;border-radius:14px;padding:34px 22px;margin:42px 0;text-align:center;\">\n    <p style=\"font-size:1.15em;line-height:1.6;color:#5b657a;max-width:760px;margin:0 auto 22px auto;\">Si tu conjunto de pruebas se inclina hacia <strong style=\"font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;\">SerEquivalenteA<\/strong>, FluentAssertions 8.10 es una actualizaci\u00f3n de bajo riesgo y alta eficiencia: menos fallos fr\u00e1giles, diagn\u00f3sticos m\u00e1s claros, comparaciones desordenadas m\u00e1s r\u00e1pidas y mayor rigor en las reglas de configuraci\u00f3n.<\/p>\n\n    <div style=\"display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:18px;\">\n      <a href=\"https:\/\/xceed.com\/es\/productos\/pruebas-unitarias\/afirmaciones-fluidas\/\" style=\"display:inline-block;background:#f26522;color:#ffffff;text-decoration:none;padding:14px 28px;border-radius:10px;font-weight:700;font-size:1em;box-shadow:0 6px 18px rgba(242,101,34,0.18);\">\n        Ver FluentAssertions\n      <\/a>\n    <\/div>\n  <\/div>\n<\/div>\n\n<h2 style=\"margin-top:42px;color:#f26522;\">Preguntas frecuentes<\/h2>\n\n<div style=\"background:#fff8f4;border:1px solid #f8d7c7;padding:20px 22px;border-radius:12px;margin:24px 0;\">\n  <h3 style=\"margin-top:0;color:#222;\">\u00bfLa nulidad como vac\u00edo se aplica solo en el nivel superior?<\/h3>\n  <p style=\"margin-bottom:0;\">No. Las nuevas opciones se aplican tambi\u00e9n dentro de los grafos de objetos, por lo que las propiedades anidadas tambi\u00e9n se benefician.<\/p>\n<\/div>\n\n<div style=\"background:#fff8f4;border:1px solid #f8d7c7;padding:20px 22px;border-radius:12px;margin:24px 0;box-shadow:0 6px 18px rgba(242,101,34,0.08);\">\n  <h3 style=\"margin-top:0;color:#222;\">\u00bfLa comparaci\u00f3n nulo-como-vac\u00edo es unidireccional?<\/h3>\n  <p style=\"margin-bottom:0;\">No. Funciona sim\u00e9tricamente en ambos lados de la comparaci\u00f3n.<\/p>\n<\/div>\n\n<div style=\"background:#fff8f4;border:1px solid #f8d7c7;padding:20px 22px;border-radius:12px;margin:24px 0;\">\n  <h3 style=\"margin-top:0;color:#222;\">\u00bfCambiar\u00e1n los diagn\u00f3sticos de \u00edndices externos mejorados el comportamiento de las aserciones?<\/h3>\n  <p style=\"margin-bottom:0;\">No. Esto es una mejora de diagn\u00f3stico. La aserci\u00f3n a\u00fan falla por la misma raz\u00f3n; el mensaje de error es simplemente m\u00e1s \u00fatil.<\/p>\n<\/div>\n\n<div style=\"background:#fff8f4;border:1px solid #f8d7c7;padding:20px 22px;border-radius:12px;margin:24px 0;\">\n  <h3 style=\"margin-top:0;color:#222;\">\u00bfQu\u00e9 cambi\u00f3 en el rendimiento de las colecciones no ordenadas?<\/h3>\n  <p style=\"margin-bottom:0;\">Las comparaciones no ordenadas (por ejemplo, usando WithoutStrictOrdering) son significativamente m\u00e1s r\u00e1pidas en colecciones grandes debido a una estrategia de coincidencia m\u00e1s escalable y varias optimizaciones de asignaci\u00f3n\/ejecuci\u00f3n de prueba.<\/p>\n<\/div>\n\n<div style=\"background:#fff8f4;border:1px solid #f8d7c7;padding:20px 22px;border-radius:12px;margin:24px 0;\">\n  <h3 style=\"margin-top:0;color:#222;\">\u00bfPor qu\u00e9 las reglas basadas en rutas ahora fallan para los tipos sem\u00e1nticos de valor?<\/h3>\n  <p style=\"margin-bottom:0;\">Porque esas reglas no se aplican a los tipos sem\u00e1nticos de valor de la manera que la mayor\u00eda de la gente espera. En lugar de ignorar silenciosamente la regla, FluentAssertions ahora falla con un error descriptivo para que pueda arreglar la configuraci\u00f3n expl\u00edcitamente.<\/p>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>FluentAssertions 8.10 ofrece cuatro mejoras de BeEquivalentTo de alto impacto: opciones de equivalencia de nulo-como-vac\u00edo, mejores diagn\u00f3sticos de elementos extra\u00f1os, coincidencias no ordenadas m\u00e1s r\u00e1pidas y fallas m\u00e1s claras para reglas inv\u00e1lidas basadas en rutas.<\/p>","protected":false},"author":12,"featured_media":3693,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[141,78,50],"tags":[],"products":[],"class_list":["post-3692","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all","category-release-notes","category-releases"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>FluentAssertions 8.10 BeEquivalentTo Improvements (4 Updates)<\/title>\n<meta name=\"description\" content=\"FluentAssertions 8.10 BeEquivalentTo improvements reduce brittle tests and speed up unordered comparisons, with better diagnostics and clearer configuration errors.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/xceed.com\/es\/blog\/todos\/fluentassertions-8-10-beequivalentto-mejoras\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"FluentAssertions 8.10 BeEquivalentTo Improvements (4 Updates)\" \/>\n<meta property=\"og:description\" content=\"FluentAssertions 8.10 BeEquivalentTo improvements reduce brittle tests and speed up unordered comparisons, with better diagnostics and clearer configuration errors.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/xceed.com\/es\/blog\/todos\/fluentassertions-8-10-beequivalentto-mejoras\/\" \/>\n<meta property=\"og:site_name\" content=\"Xceed Software\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-12T13:59:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-12T13:59:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"683\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Christopher Radford\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Christopher Radford\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/\"},\"author\":{\"name\":\"Christopher Radford\",\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#\\\/schema\\\/person\\\/79a6cce48b70a88e6701fef086d7c351\"},\"headline\":\"FluentAssertions 8.10: Four BeEquivalentTo Improvements You\u2019ll Actually Feel\",\"datePublished\":\"2026-05-12T13:59:31+00:00\",\"dateModified\":\"2026-05-12T13:59:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/\"},\"wordCount\":770,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Xceed-PDF-Library-for-.NET-2.0-9.png\",\"articleSection\":[\"All\",\"Release Notes\",\"Releases\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/\",\"url\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/\",\"name\":\"FluentAssertions 8.10 BeEquivalentTo Improvements (4 Updates)\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Xceed-PDF-Library-for-.NET-2.0-9.png\",\"datePublished\":\"2026-05-12T13:59:31+00:00\",\"dateModified\":\"2026-05-12T13:59:33+00:00\",\"description\":\"FluentAssertions 8.10 BeEquivalentTo improvements reduce brittle tests and speed up unordered comparisons, with better diagnostics and clearer configuration errors.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#primaryimage\",\"url\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Xceed-PDF-Library-for-.NET-2.0-9.png\",\"contentUrl\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/Xceed-PDF-Library-for-.NET-2.0-9.png\",\"width\":1024,\"height\":683},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/xceed.com\\\/blog\\\/all\\\/fluentassertions-8-10-beequivalentto-improvements\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/xceed.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FluentAssertions 8.10: Four BeEquivalentTo Improvements You\u2019ll Actually Feel\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#website\",\"url\":\"https:\\\/\\\/xceed.com\\\/fr\\\/\",\"name\":\"Xceed Software\",\"description\":\"Provides tools for .NET, Windows Forms, WPF, Silverlight, and ASP.NET developers to create better applications.\",\"publisher\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/xceed.com\\\/fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#organization\",\"name\":\"Xceed Software\",\"alternateName\":\"Xceed Software\",\"url\":\"https:\\\/\\\/xceed.com\\\/fr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Untitled-design-24.png\",\"contentUrl\":\"https:\\\/\\\/xceed.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Untitled-design-24.png\",\"width\":512,\"height\":512,\"caption\":\"Xceed Software\"},\"image\":{\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/xceed.com\\\/fr\\\/#\\\/schema\\\/person\\\/79a6cce48b70a88e6701fef086d7c351\",\"name\":\"Christopher Radford\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g\",\"caption\":\"Christopher Radford\"},\"sameAs\":[\"http:\\\/\\\/www.localhost:10003\"],\"url\":\"https:\\\/\\\/xceed.com\\\/es\\\/blog\\\/author\\\/radfordc\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mejoras en FluentAssertions 8.10 BeEquivalentTo (4 Actualizaciones)","description":"FluentAssertions 8.10 BeEquivalentTo mejoras reducen pruebas fr\u00e1giles y aceleran comparaciones no ordenadas, con mejores diagn\u00f3sticos y errores de configuraci\u00f3n m\u00e1s claros.","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:\/\/xceed.com\/es\/blog\/todos\/fluentassertions-8-10-beequivalentto-mejoras\/","og_locale":"es_MX","og_type":"article","og_title":"FluentAssertions 8.10 BeEquivalentTo Improvements (4 Updates)","og_description":"FluentAssertions 8.10 BeEquivalentTo improvements reduce brittle tests and speed up unordered comparisons, with better diagnostics and clearer configuration errors.","og_url":"https:\/\/xceed.com\/es\/blog\/todos\/fluentassertions-8-10-beequivalentto-mejoras\/","og_site_name":"Xceed Software","article_published_time":"2026-05-12T13:59:31+00:00","article_modified_time":"2026-05-12T13:59:33+00:00","og_image":[{"width":1024,"height":683,"url":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png","type":"image\/png"}],"author":"Christopher Radford","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Christopher Radford","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#article","isPartOf":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/"},"author":{"name":"Christopher Radford","@id":"https:\/\/xceed.com\/fr\/#\/schema\/person\/79a6cce48b70a88e6701fef086d7c351"},"headline":"FluentAssertions 8.10: Four BeEquivalentTo Improvements You\u2019ll Actually Feel","datePublished":"2026-05-12T13:59:31+00:00","dateModified":"2026-05-12T13:59:33+00:00","mainEntityOfPage":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/"},"wordCount":770,"commentCount":0,"publisher":{"@id":"https:\/\/xceed.com\/fr\/#organization"},"image":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#primaryimage"},"thumbnailUrl":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png","articleSection":["All","Release Notes","Releases"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/","url":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/","name":"Mejoras en FluentAssertions 8.10 BeEquivalentTo (4 Actualizaciones)","isPartOf":{"@id":"https:\/\/xceed.com\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#primaryimage"},"image":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#primaryimage"},"thumbnailUrl":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png","datePublished":"2026-05-12T13:59:31+00:00","dateModified":"2026-05-12T13:59:33+00:00","description":"FluentAssertions 8.10 BeEquivalentTo mejoras reducen pruebas fr\u00e1giles y aceleran comparaciones no ordenadas, con mejores diagn\u00f3sticos y errores de configuraci\u00f3n m\u00e1s claros.","breadcrumb":{"@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#primaryimage","url":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png","contentUrl":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/05\/Xceed-PDF-Library-for-.NET-2.0-9.png","width":1024,"height":683},{"@type":"BreadcrumbList","@id":"https:\/\/xceed.com\/blog\/all\/fluentassertions-8-10-beequivalentto-improvements\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/xceed.com\/"},{"@type":"ListItem","position":2,"name":"FluentAssertions 8.10: Four BeEquivalentTo Improvements You\u2019ll Actually Feel"}]},{"@type":"WebSite","@id":"https:\/\/xceed.com\/fr\/#website","url":"https:\/\/xceed.com\/fr\/","name":"Xceed Software","description":"Proporciona herramientas para que los desarrolladores de .NET, Windows Forms, WPF, Silverlight y ASP.NET puedan crear mejores aplicaciones.","publisher":{"@id":"https:\/\/xceed.com\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/xceed.com\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/xceed.com\/fr\/#organization","name":"Xceed Software","alternateName":"Xceed Software","url":"https:\/\/xceed.com\/fr\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/xceed.com\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/07\/Untitled-design-24.png","contentUrl":"https:\/\/xceed.com\/wp-content\/uploads\/2026\/07\/Untitled-design-24.png","width":512,"height":512,"caption":"Xceed Software"},"image":{"@id":"https:\/\/xceed.com\/fr\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/xceed.com\/fr\/#\/schema\/person\/79a6cce48b70a88e6701fef086d7c351","name":"Christopher Radford","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/646a50aec7dd7187eab0ace3be81c465cdf54ce89b57357657f254b7cb1b996c?s=96&d=mm&r=g","caption":"Christopher Radford"},"sameAs":["http:\/\/www.localhost:10003"],"url":"https:\/\/xceed.com\/es\/blog\/author\/radfordc\/"}]}},"_links":{"self":[{"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/posts\/3692","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/comments?post=3692"}],"version-history":[{"count":0,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/posts\/3692\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/media\/3693"}],"wp:attachment":[{"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/media?parent=3692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/categories?post=3692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/tags?post=3692"},{"taxonomy":"products","embeddable":true,"href":"https:\/\/xceed.com\/es\/wp-json\/wp\/v2\/products?post=3692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}