Artículos de opinión

Blockchain: Pruebas encadenadas

Probablemente hayas leído alguna noticia acerca de la moneda virtual llamada Bitcoin, la cual lleva algunos años funcionando sobre su propia red Blockchain y ha llegado a valer más de 3.000 dólares por unidad hasta el momento de escribir este artículo. Están naciendo nuevas empresas exclusivamente dedicadas a esta tecnología, las cuales desarrollan y mantienen nuevas redes, monedas virtuales y/o aplicaciones con un gran potencial, así como Ethereum, Golem, Aragon

La tecnología Blockchain ha llegado para quedarse y con ella vienen muchos cambios importantes en la forma en que se llevan a cabo los negocios y las aplicaciones hoy en día. Estamos hablando de redes descentralizadas, seguras, inmutables, con el consenso distribuido y contratos inteligentes.

Estas características abren un nuevo universo de infinitas posibilidades para desarrollar aplicaciones descentralizadas (DApps) basadas en Blockchain, pero también presentan grandes desafíos en el ámbito del Testing. No sólo el cambio de tecnología es significativo, sino que también son significativos los cambios desde el punto de vista del proceso de negocio. Mientras que las aplicaciones Blockchain requerirán todas las pruebas y validaciones estándares, tales como pruebas funcionales, pruebas de integración, pruebas de seguridad y pruebas de rendimiento, también requerirán conocimientos adicionales de pruebas especializadas.

Probando los Smart Contracts:

Los Smart Contracts (o contratos inteligentes) son módulos de software en la Blockchain que ejecutan transacciones automáticamente en base a condiciones predefinidas y lógica de negocio. Las pruebas de contratos inteligentes implican la simulación de todas las posibles condiciones esperadas e inesperadas para cada contrato, probando todas las combinaciones de lógica empresarial y la ejecución correcta de las transacciones. Y todo esto en el contexto de una red cambiante y en expansión. Dado el gran número de nodos y combinaciones que son probables, la automatización de las pruebas se convierte en una necesidad importante.

Probando los nodos:

La fortaleza de la red Blockchain radica en que el registro de transacciones compartido sea exactamente el mismo en cada uno de los nodos que la forman. Esto se logra a través del consenso en todos los nodos en el orden en que se agregan las transacciones a la red. La comprobación de la consistencia de las transacciones consiste en probar el protocolo de consenso para garantizar que las transacciones se almacenan en la secuencia adecuada en condiciones normales, así como en los casos en que los nodos fallan simultáneamente o suficientes nodos no participan en la red durante un período de tiempo. La resiliencia también debe ser probada mediante la validación del registro de transacciones, por ejemplo, después de que los nodos que se reiniciaron o se unieron a la red se sincronicen correctamente con otros nodos de validación.

Probando requisitos no funcionales:

Otros factores importantes que deben ser probados en la Blockchain son el rendimiento y la latencia, que variarán en función del tamaño de la red, el tamaño esperado de las transacciones y el protocolo de consenso utilizado. También es importante medir si se mantiene la integridad de la red y del registro de transacciones compartido mientras se prueba el rendimiento. Las prueba de seguridad y privacidad de los datos basándose en permisos selectivos también son necesarias.

Después de dar estas rápidas pinceladas acerca de los desafíos que se avecinan, es evidente que sería un error no tener un pie metido en las aplicaciones descentralizadas (DApps) y mantenerse al día de la revolución tecnológica que estamos viviendo.

 

Referencias:

https://www.capgemini.com/blog/capping-it-off/2017/01/testing-of-smart-contracts-in-the-blockchain-world


serran alberola
Esteve Serrano Alberola
Test Lead | Digital Assurance & Testing | SOGETI Spain

Acerca de Sogeti España

Como parte del Grupo Capgemini, Sogeti opera en más de 100 localizaciones a nivel mundial. Trabajando estrechamente con clientes y socios para aprovechar al máximo las oportunidades de la tecnología, Sogeti combina agilidad y velocidad de implementación para diseñar soluciones innovadoras enfocadas al futuro en Digital Assurance & Testing, Cloud y Ciberseguridad, y todo ello, impulsado por IA y automatización. Con su enfoque práctico y su pasión por la tecnología, Sogeti ayuda a las organizaciones a implementar su transformación digital a gran velocidad. Si quieres conocer nuestro "Value in the making", visítanos en www.sogeti.es

3 comments on “Blockchain: Pruebas encadenadas

  1. Hola Maria Belen, muchísimas gracias por tu comentario pero por ahora no tenemos más publicaciones sobre ese tema pero tendremos en cuenta tu comentario para futuros posts. ¿Leiste el último sobre NTF? Quizás sea de tu interés. Un saludo y seguimos en contacto 😉

    Me gusta

  2. Maria Belen LLobet

    Hola, actualmente formamos un equipo donde estamos interesados en aprender acerca de como realizar testing en Blockchain, si tenes algun material para sugerirnos, seria muy bienvenido, Muchas Gracias!

    Me gusta

  3. Pingback: Blockchain: Vulnerabilidades y sus consecuencias – QA:news

Deja tu comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: