Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Unit Testing/es: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''Spanish''' [[Unit_Testing|English]] [[Unit_Testing_Bulgarian|Български]] | '''Spanish''' [[Unit_Testing|English]] [[Unit_Testing_Bulgarian|Български]] | ||
[[Category:Spanish]] | [[Category:Spanish]] | ||
[[Category:QtDevelopmentSpanish::General]] | |||
= Test unitarios con QTest = | = Test unitarios con QTest = | ||
Line 13: | Line 14: | ||
El fragmento de código a continuación va en el archivo CMakeLists.txt, y especifica los archivos que son utilizados por la prueba. | El fragmento de código a continuación va en el archivo CMakeLists.txt, y especifica los archivos que son utilizados por la prueba. | ||
<code> | <code> | ||
enable_testing(true) | |||
include_directories( test ) | |||
set(test_additional | set(test_additional | ||
some_dependency.cpp | |||
some_other_dependency.cpp | |||
) | |||
add_test(dummytest test/DummyTest.cpp) | |||
</code> | |||
Si no desea compilar las pruebas todo el tiempo, remueve <code>enable_testing()<code> y correr cmake con <code>cmake .. -DENABLE_TESTING=true<code> para compilar los tests. | Si no desea compilar las pruebas todo el tiempo, remueve <code>enable_testing()<code> y correr cmake con <code>cmake .. -DENABLE_TESTING=true<code> para compilar los tests. | ||
Line 21: | Line 29: | ||
El macro a continuación usa la variable ${test_additional} para agregar archivos adicionales a la prueba a compilar. Añada la prueba con: </code>add_test()</code> a ctest test “database”. | El macro a continuación usa la variable ${test_additional} para agregar archivos adicionales a la prueba a compilar. Añada la prueba con: </code>add_test()</code> a ctest test “database”. | ||
<code> | <code> | ||
MACRO (add_test testname testsrc) | |||
SET (test_${testname}_SRCS ${testsrc}) | |||
qt4_automoc(${test_${testname}_SRCS}) | 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}) | ADD_TEST(test_${testname} test_${testname}) | ||
ENDMACRO (add_test) | |||
</code> | |||
Las pruebas pueden ser compiladas con <code>make<code> y ejecutar directamente por el nombre de la prueba (test_${testname} como es especificado en el macro) o todas las pruebas en lote con: <code>make test<code> | Las pruebas pueden ser compiladas con <code>make<code> y ejecutar directamente por el nombre de la prueba (test_${testname} como es especificado en el macro) o todas las pruebas en lote con: <code>make test<code> | ||
[[Category:Howto]] | [[Category:Howto]] |
Revision as of 11:36, 25 February 2015
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