Mantis Bugtracker          
testlink.org

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003764TestLinkRequirement Managementpublic2010-09-09 09:342010-10-09 08:01
Reporteramitkhullar 
Assigned Toamitkhullar 
PrioritynormalSeveritymajorReproducibilityhave not tried
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version1.9 Beta 6 
Fixed in Version1.9 RC 1 
Summary0003764: Req Mapping breaks on import if the Req Spec Name is same across multiple tree nodes
DescriptionSee the attached image ... the right most section mentions how the req. are organized in the tree.

Also attached is the test case file used for import.

You can see that the req folders created in the tree are having similar nodes at multiple levels like UI and Processing Req which again have some req beneath them with diff Req. Doc ID. When we map a test case which is linked across multiple req doc ids with same parent name but different root node and export it and then try to import it the error shown in the snapshot is given while import and the imported test case looks like it.
Steps To ReproduceProbably what would be best to say is that the test case is exported with linked requirements across multiple req specs. On trying to reimport that test case inthe system the error attached in snapshot untitled.jpg is shown .


If you do further analysis what I doubt is that the req spec tree structure has similar nodes - let me give another detailed example:
Req Spec Tree Structure:

Landing Page
  Common Req:CR
    CR1:UI
        COMLAND-1:xyz
        COMLAND-2:abc
    CR2:Processing Req
        COMLAND-11:xyzq
        COMLAND-33:abca
  Customer Landing Page:CLP
    CLP1:UI
        COMLAND-1:xyz
        COMLAND-2:abc
    CLP2:Processing Req
        CUSTLAND-11:xyzq
        CUSTLAND-15:abca

Now say I have a test case as shown in pic testcase.jpg which is mapped to all the above requirements and try to export it so it gives the XML output as attached and when i try to import it the error mentioned "Req Doc ID = CUSTLAND 11 cannot be linked to test because is not direct child of Req. Spec Processing Req. " is displayed for all the requirements except one and the test case is imported but only 1 requirement is mapped to it and rest all are skipped.
Additional InformationFurther investigation on this issue brings this down to the problem in testproject.class file @getReqSpec function which has a query e.g.

SELECT RSPEC.id,NH.name AS title FROM req_specs RSPEC, nodes_hierarchy NH WHERE testproject_id=15233 AND RSPEC.id=NH.id ORDER BY title;

which while returning the array of ReqSpecID and Name has duplicate records due to same Req Spec Suite Name

57846, 'Processing Req'
57743, 'Processing Req'
57821, 'Processing Req'
57792, 'Processing Req'
57698, 'UI Req'
57814, 'UI Req'
57781, 'UI Req'
57839, 'UI Req'

And the RSPEC values in this array are matched in the function processRequirements in tcImport.php to the NAme of the Req. Spec...
Due to which it picks the last value for RSPEC.ID which in this case is 57792 for Name 'Processing Req' and 57839 for 'UI Req'.
Which should be in this case 57846 / 57698 for specific test case (not they need to be the first values but by order but by matching the test case REQ_DOC_ID also in the above queries.

So the query should be
SELECT RSPEC.id,NH.name AS title FROM req_specs RSPEC, nodes_hierarchy NH, requirements REQ
WHERE testproject_id=15233
AND RSPEC.id=NH.id
AND REQ.SRS_ID = RSPEC.id AND REQ.REQ_DOC_ID = 'COMLAND-1'
ORDER BY title;
which returns the exact REQ SPEC ID = 57698

which in turn gives exact REQ ID From 2nd query
SELECT REQ.id from requirements REQ WHERE REQ.req_doc_id='COMLAND-1' AND REQ.srs_id=57698 ;

57699 which is correct.
TagsNo tags attached.
Database (MySQL,Postgres,etc)1.9.6
Browser
PHP Version
TestCaseID
QA Team - Task Workflow Status
Attached Filesjpg file icon Untitled.jpg [^] (281,007 bytes) 2010-09-09 09:34
xml file icon testcases.xml [^] (3,188 bytes) 2010-09-09 09:40
jpg file icon test case.jpg [^] (89,466 bytes) 2010-09-09 09:40

- Relationships

-  Notes
(0011303)
fman (administrator)
2010-09-09 10:20
edited on: 2010-09-09 10:21

1. Summary is not clear => update it
2. give really detailed steps to reproduce
2. do not set target version at least you plan to solve the issue

(0011309)
amitkhullar (reporter)
2010-09-09 16:01

I have added my analysis above with the RCA. Please look into this for impacts as suggested above in the code elsewhere to remove this issue
(0011314)
fman (administrator)
2010-09-09 17:52

other option is doing search by REQ SPEC DOCID instead of using name.
(0011315)
amitkhullar (reporter)
2010-09-09 17:57

Yes that is also correct but then it should be unique across all the req. specs.
(0011317)
fman (administrator)
2010-09-09 18:04

>> Yes that is also correct but then it
>> should be unique across all the req. specs.
need to check BUT today we are requesting that REQ DOC ID be UNIQUE inside a TEST PROJECT at application level (we are no able to do this using a unique index on db)
(0011321)
amitkhullar (reporter)
2010-09-10 03:18

u can leave the requirements import part just create the requirements tree structure under your project as I have mentioned in the Steps to Produce and then create a test case which maps to all the requirements created across diff req specs. Export that test case and then try to import it again in the system.
(0011809)
fman (administrator)
2010-10-09 08:01

Release 1.9 RC1

- Issue History
Date Modified Username Field Change
2010-09-09 09:34 amitkhullar New Issue
2010-09-09 09:34 amitkhullar File Added: Untitled.jpg
2010-09-09 09:40 amitkhullar File Added: testcases.xml
2010-09-09 09:40 amitkhullar File Added: test case.jpg
2010-09-09 10:20 fman Note Added: 0011303
2010-09-09 10:21 fman Note Edited: 0011303 View Revisions
2010-09-09 12:06 amitkhullar Description Updated View Revisions
2010-09-09 12:06 amitkhullar Steps to Reproduce Updated View Revisions
2010-09-09 16:00 amitkhullar Additional Information Updated View Revisions
2010-09-09 16:01 amitkhullar Note Added: 0011309
2010-09-09 17:51 fman Priority high => normal
2010-09-09 17:52 fman Note Added: 0011314
2010-09-09 17:57 amitkhullar Note Added: 0011315
2010-09-09 18:04 fman Note Added: 0011317
2010-09-09 18:19 amitkhullar Relationship added related to 0003765
2010-09-09 21:24 fman Relationship deleted related to 0003765
2010-09-10 03:18 amitkhullar Note Added: 0011321
2010-09-11 13:26 amitkhullar Assigned To => amitkhullar
2010-09-11 13:26 amitkhullar Status new => assigned
2010-09-11 13:26 amitkhullar Status assigned => work in progress
2010-09-11 13:43 amitkhullar Resolution open => fixed
2010-09-11 13:43 amitkhullar Fixed in Version => 1.9 RC 1
2010-09-11 17:43 amitkhullar Status work in progress => assigned
2010-09-11 17:44 amitkhullar Status assigned => resolved
2010-10-09 08:01 fman Note Added: 0011809
2010-10-09 08:01 fman Status resolved => closed



Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker