Is it possible to update one suite run with multiple request on test-results endpoint ?

Hello,

I have  3 tests in a test suite whenever I execute it, Octane creates 3 runs with the status "In progress", I can update those 3 runs at the same time with an xml request on test-results endpoint, but I was wondering if it was possible to update the runs one by one (which means that I would send 3 different requests on the same build id). I tried to update only one run but the other runs status became "skipped" and it's not possible to update them anymore.

Is there any way to force the other runs to stay at "In progress" status until we update them ? 

 

Thanks,

  • Hi.

    First of all ,I  will explain why other runs status became "skipped" : 

    testing framework trigger specific job to execute specific tests - and we expect from job to return results in one bulk. The results that are missing - is considered as ignored and we are not expecting to receive additional information about them. Therefore we turn them to be skipped. 

     

    But, what you are trying to do - should work.

    We also allow in UI of Octane to rerun existing runs and actually are updating already existing results (its kind of what you are trying to do)

    If its not working for you , possibly because of "started" field : When  run turned to skipped - its "started"  field get value of "now", When you send next test results, started time of it needs to be newer than existing one otherwise its ignored.

    Radi

     

     

  • Hello,

    First of all thank you for your response, I tried the solution that you provided but it seems like it's not working

     

    Context : I have test1 and test2 in my test suite, I do launch the test suite, Octane creates a suite run with two runs inside.

    I'm updating test1 with this request :

    <?xml version='1.0' encoding='UTF-8'?>
    <test_result>
        <build build_id="259" job_id="..." server_id="..."/>
       <test_runs>
            <test_run started="1585908081320" status="Failed" duration="14" name="test1">
            </test_run>
       </test_runs>
    </test_result>
     
    Test1 has been successfully updated, and test2 has the status "skipped" as you explained.
     
    The second request is for test2 : 
    <?xml version='1.0' encoding='UTF-8'?>
    <test_result>
        <build build_id="259" job_id="..." server_id="..."/>
       <test_runs>
            <test_run started="1585908081400" status="Failed" duration="14" name="test2">
            </test_run>
       </test_runs>
    </test_result>
     
    But the status of test2 remains the same "Skipped", I found a solution by using the HPECLIENTTYPE, but I'm trying to avoid it ... Basically what I'm doing is to force the status of the tests to not_completed before sending the xml request.
     
    If you know a way to avoid this header that would help me a lot !
    Thanks
     
    P.S: Octane accept the second request with the "success" status but does not update it to failed.
  • Verified Answer

    Please check "started" time in skipped run in Octane UI and started time that you send in XML , and verify that second one is newer.

    As option, try to set "started" value in second request to be to tommorow.

  • My apologies I changed the value started in the previous requests but was not enough, I tried by changing with the current time in millis and it's working.

     

    Thanks a lot !