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

From Qt Wiki
Jump to navigation Jump to search
No edit summary
(Add "cleanup" tag)
Line 1: Line 1:
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
'''Spanish''' [[Unit_Testing|English]] [[Unit_Testing_Bulgarian|Български]]
'''Spanish''' [[Unit_Testing|English]] [[Unit_Testing_Bulgarian|Български]]



Revision as of 17:06, 3 March 2015

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

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