Unit Testing/es

From Qt Wiki
Jump to navigation Jump to search

Spanish English Български

Test unitarios con QTest

Para una introducción basica de como escribir pruebas unitarias usandoqtestlib, remitase al "manual oficial (in English).":http://doc.qt.io/qt-5.0/qttestlib/qtest-tutorial.html

Corriendo y compilando QTests con CTest

CTest, por diseño es solo una facilidad para testear. Por esto se ajusta a diferentes frameworks de pruebas unitarias y de movida con QTest.

El fragmento de código a continuación va en el archivo CMakeLists.txt, y especifica los archivos que son utilizados por la prueba.

enable_testing(true)
include_directories( test )

set(test_additional
 some_dependency.cpp
 some_other_dependency.cpp
)
add_test(dummytest test/DummyTest.cpp)

Si no desea compilar las pruebas todo el tiempo, remueve

enable_testing()<code> y correr cmake con <code>cmake .. -DENABLE_TESTING=true<code> para compilar los tests.

El macro a continuación usa la variable ${test_additional} para agregar archivos adicionales a la prueba a compilar. Añada la prueba con:

add_test() a ctest test “database”.

MACRO (add_test testname testsrc)
 SET (test_${testname}_SRCS ${testsrc})

qt4_automoc(${test_${testname}_SRCS})
 add_executable(test_${testname} ${test_${testname}_SRCS} ${test_additional})
 target_link_libraries(test_${testname} ${QT_QTCORE_LIBRARY}
 ${QT_QTTEST_LIBRARY} ${QT_QTGUI_LIBRARY}
 ${GSOAP_LIBRARIES} ${QT_QTLOCATION_LIBRARY})

ADD_TEST(test_${testname} test_${testname})
ENDMACRO (add_test)

Las pruebas pueden ser compiladas con make y ejecutar directamente por el nombre de la prueba (test_${testname} como es especificado en el macro) o todas las pruebas en lote con: make test