Forum Discussion

steve_hall's avatar
steve_hall
Contributor
12 years ago

TestComplete with PowerBuilder problem

Hi All,



I'm rather new to TestComplete personally, but am picking up a project left by my predecessor to test a PowerBuilder project. For the most part things are going ok, but I've hit a couple of problems....



First Problem: Our AUT has a number of forms in a tabular format. Using "FindAllChildren", I can see something along the lines of



sys.process().client().client().client(field1_t)

sys.process().client().client().client(field2_t)

sys.process().client().client().client(field3_t)

sys.process().client().client().client(field1)

sys.process().client().client().client(field2)

sys.process().client().client().client(field3)

sys.process().client().client().client(field1,2)

sys.process().client().client().client(field2,2)

sys.process().client().client().client(field3,2)



And so on... The form also has buttons to add / delete rows to / from the table. However, when I click "Add", a new row appears in the app, but doing a "FindAllChildren" again at that point produces the same list of children as BEFORE I had clicked add - seemingly the controls for the new row are not recognised by TC, despite being on screen?



Second Problem: The list of controls as pasted above isn't quite accurate. What we ACTUALLY get when we go into the form is more like:



sys.process().client().client().client(field1_t)

sys.process().client().client().client(field2_t)

sys.process().client().client().client(field3_t)

sys.process().client().client().client(field1)

sys.process().client().client().edit(field2)

sys.process().client().client().client(field3)

sys.process().client().client().client(field1,2)

sys.process().client().client().client(field2)

sys.process().client().client().client(field3,2)

sys.process().client().client().client(field1,3)

sys.process().client().client().client(field2,2)

sys.process().client().client().client(field3,3)

sys.process().client().client().client(field1,4)

sys.process().client().client().client(field2,3)

sys.process().client().client().client(field3,4)



Where the first row, "field2" is the field that the cursor is active in when entering the form - thus "throwing out of line" the indexing for the remaining rows.



If anyone can shed any light on these issues (particularly the first!) we'd be very grateful!



Thanks,



Steve

  • TanyaYatskovska's avatar
    TanyaYatskovska
    SmartBear Alumni (Retired)

    Hi Steve,


     


    As far as I know, you were working with our Support team on this issue. Is it resolved?


     

  • Hi Tanya,



    Mike's reply certainly resolved the issue of the "missing" controls.



    It did not resolve the issue of the "misaligned control ID's" (for want of a better description for it!)... However, I suspect that issue is down to how our application is developed / limitations of PowerBuilder, rather than an issue with TC - indeed, the it seems the more you edit data in our "table" the more this issue becomes apparent. It is looking to me as though the only "reliable" way I can refer to a given row is via its coordinates - far from ideal :)



    As such, I'll send Mike a reply as above, but with a bit more detail on the issues I've discovered / investigation work I've done.



    Many thanks



    Steve
  • richcoto's avatar
    richcoto
    Occasional Contributor
    Hi Tanya, i know i posted in other thread, but researching the issue i talked about is because this, i've been researching all day about it, the app i'm trying to test is a power builder based app that's why this is ocurring to me...



    Thing is i have mapped objects that i see in the object browser which visible value is set to false such as visibleonscreen, which is weird because i have the window open... and yes i'm sure that is the control i'm trying to highlight because i highligt the parent and is higlighted correctly...



    So, i see there is no fix for this or is something that i can do ?



    I don't mind to click over the objects i need by coordinates, problems came to me where for example i wanted to edit a combo box, if i click over the combo how i can set my script to go to certain option....