Skip to content

Test case directory and project structure in tmc langs

nucularmoo edited this page Oct 18, 2017 · 23 revisions

Until completed as a feature and merged with master, work in progress can be found in the forked TestMyQT/tmc-langs project under the branch template_folder_structure.

Test cases are located in the tmc-langs project.

Directory path for test cases is tmc-langs/tmc-langs-qmake/src/test/resources.

###Test case directory structure and library file naming policy

For each test case there exists a subdirectory where the relevant test case project file is located. In addition to the project file, each test case directory also contains the following subdirectories:

test case app contains the test case project file and relevant source and header files. test_case_test_runner contains the test runner project file and relevant source and header files. test_case_libs contains the library project file and relevant source and header files. This directory is only included for projects that make use of libraries. It is worth noting that in the test case of multiple libraries, each library is contained in it's own library, following a naming scheme of test_case_lib, test_case_lib2 and so on. The project, source and header file names for each library will reflect the name of the library directory to avoid confusion regarding library files.

Test case project structure follows our proposed structure for testing projects using the tmc-plugin.

Test cases:

passing_nolib - tests passing with no library included in the project

passing_single_lib - tests passing with one library included in the project

passing_multiple_lib - tests passing with multiple libraries included in the project

failing_nolib - tests failing with no library included in the project

failing_single_lib - tests failing with one library included in the project

failing_single_lib_not_compiling - build failing with one library included in the project, said library failing to compile

failing_compile_single_lib_compiling - build failing with one library included in the project, said library compiling as intended

###Test case project structure within Qt Creator

__

TODO: Add documentation for project structure and test case subdirectory structure. Once the qmake support branch is merged with the original tmc-langs repo, include test case directory links for each test case in the repo to the description of the test case. If possible, add one more test case for simple testing of a simple user interface element.

Clone this wiki locally