programas para lenguaje instrucciones explicados ensamblador ejemplos curso unit-testing assembly tdd x86 expect

unit-testing - para - lenguaje ensamblador pdf



¿Qué marcos de prueba de unidad están disponibles para el ensamblador x86? (2)

En mi humilde opinión, la noción de prueba unitaria no se aplica a lenguajes de bajo nivel como los ensambladores. La prueba de unidad se asocia con la unidad de prueba de la funcionalidad de un método, clase, procedimiento. En mi opinión, tales cosas no existen en el código de ensamblaje; por supuesto, es posible declarar procedimientos en algunos ensambladores (fue posible en TASM y MASM), pero no son algo que sí existe en el código de máquina.

Sin embargo, creo que todavía podemos considerar pruebas automatizadas de código de ensamblaje. Personalmente, no he oído hablar de ningún marco que lo permita.

Parece que las pruebas unitarias se han puesto de moda en estos días y sé que muchos de ustedes van a pensar: "Bueno, ¿por qué no usar el lenguaje X con el marco Y ya?" Pero estoy proponiendo esta idea más como una prueba de concepto, o como recuerdo nostálgico de mis primeros años con la programación de computadoras.

Estoy trabajando en BSD ejecutándose en x86 con NASM, y he reflexionado sobre el uso de shell scripting con expect (1) para realizar pruebas unitarias, pero quería saber de antemano:

¿Qué marcos de prueba de unidad están disponibles para aplicaciones escritas en ensamblaje x86?


Si sus rutinas de ensamblador tienen o pueden recibir una interfaz ''C'', entonces se puede emplear cualquier marco de prueba de unidad C / C ++.

Debe mover la gran mayoría de su aplicación a una biblioteca a la que se puede llamar desde programas ''C'' (es decir, un marco de prueba). Para finalmente compilar su aplicación, escriba un front-end de ensamblador que simplemente llame a su nueva biblioteca.