Forum Discussion

mathare's avatar
mathare
Contributor
13 years ago

How to organise my project suite

The testing I am currently writing is for an application that produces a number of graphs/charts and I need to use image comparison* to check the various charts against a known baseline set of images. I am using connected applications so my code is all written in Visual Studio with the TestComplete project containing the name mapping and the baseline images in the Regions store.

I will be writing a number of different tests in Visual Studio, some of which will use the same baseline images as other tests, but what's the best way to organise my TestComplete project/project suite?

My original plan was to just have one project and store all my baseline images in folders there but I hadn't realised that folder names were not used in Regions checkpoints and that each image has to have a unique name in the project (not just in the folder). This means my baseline image names are starting to get rather long and unwieldy.

My next thought was to have one TC project for each test I write in Visual Studio and then I can just store the images for that test in the TC project and can shorten my filenames. For example, under the original plan of one project I had image names such as "Histogram_Legend_DataSet4_Histogram_PVelocity_Legend" to indicate that the image related to the "Histogram - Legend" test and showed a P-Velocity histogram and legend for DataSet4. If I have one project per test I can reduce the filename to "DataSet4_Histogram_PVelocity_Legend" at least, and perhaps further.

However, I want to just set up one name mapping file and share that between all the projects rather than re-map the same objects in each test. I presume I can set this NameMapping file up in one project and then just add it to the other projects, right? Is that the best way to go about this?

*I have discussed alternatives to image comparison with the developers but unfortunately there is no other way to test this software in the desired manner so while I know image comparison has its risks it is the route I am going down with this one.


  • Hello Mat

    >>However, I want to just set up one name mapping file and share that between all the projects rather than re-map the same objects in each test. I presume I can set this NameMapping file up in one project and then just add it to the other projects, right? Is that the best way to go about this?





    Yes, since all your projects work with the same tested application, sharing a name mapping file between the projects seems to be a good solution. In this case, when you update the name mapping in one of the projects, the changes also become available to all other projects. 

    By default, every new project already contains an empty NameMapping project item. First, you should remove this empty NameMapping item from the project, and then add the shared NameMapping file. See the "Sharing Project Items and Their Child Elements Among Several Projects" topic.





    Regards.