API - Creating test set - Error - ReleaseSemaphore

I am trying to add a test set to a folder in testlab using a VB interface.   I am able to add a folder successfully.  When I try to add a test set, it fails with the exception 'ReleaseSemaphore failed'.   I have searched the Internet for more information but there is very little and nothing that helped.


I am using ALM 11.52.580.0,  Windows 7, and Visual Studio 12.0 Professional.  I am working from code that I found in my search, but also referenced code and sections in the API reference.   I have added a reference to the OTA COM Type Library to my project, so I am also working with the object explorer to help me figure things out.


I am new to using the API interface, so part of my difficulty may be that I do not know the appropriate question(s) to ask.   Any help anyone can provide will be greatly appreciated!   Thank you!


   Private Sub cmdAddTest_Click(sender As Object, e As EventArgs) Handles cmdAddTest.Click


       Dim ota As New OTAAPIActions

       Dim dt As String = Now.Hour.ToString.PadLeft(2, "0"c) _

& Now.Minute.ToString.PadLeft(2, "0"c) _

& Now.Second.ToString.PadLeft(2, "0"c)

       ota.AddTestLabFolder("SmokeTest" & dt)




       ota.AddTestSet("SmokeTest" & dt, "Test" & dt)



   End Sub


   Public Function AddTestLabFolder(ByVal TestFolderName As String) As String


       'Add tests to a Folder (say..."MainFolder") under Subject node in TestPlan

       ' connect to Quality Center

       m_conn = New TDConnection


       m_conn.Login("****", "****")

       m_conn.Connect("****", "****")


       Dim TreeManager, root, folder1


       ' Add a Test Set Folder in Test Lab

       TreeManager = m_conn.TestSetTreeManager

       root = TreeManager.Root

       folder1 = TreeManager.NodeByPath("Root\WebFastest Automation")

       folder1.AddNode(TestFolderName) ' name of the Test Set Folder

       root = Nothing

       TreeManager = Nothing

       MessageBox.Show("Added :" & "Root\WebFastest Automation\" & TestFolderName)

       Return Nothing


   End Function



   Public Function AddTestSet(ByVal TestLabFolder As String, ByVal TestSetName As String)


       m_conn = New TDConnection


       m_conn.Login("****", "****")

       m_conn.Connect("****", "****")


        'Dim testSetFolder As TestSetFolder = Nothing

       Dim testSetFolderF As TestSetTreeManager = Nothing

       'Dim testSetF As TestSetFactory

       'Dim testSet1 As TestSet



           testSetFolderF = m_conn.TestSetTreeManager


          Dim testSetFolder As TestSetFolder = testSetFolderF.NodeByPath("Root\WebFastest Automation")

           Dim testSetFactory As TestSetFactory = testSetFolder.TestSetFactory

           Dim testSet1 As TestSet = testSetFactory.AddItem(vbNull)


          testSet1.Name = TestSetName

           testSet1.status = "Open"




           Return True


       Catch ex As Exception

           MessageBox.Show(ex.Message & "/" & ex.HResult.ToString, "AddTestSet", MessageBoxButtons.OK)

       End Try


   End Function

Sign In or Register to comment.