Forum Discussion

msenthil's avatar
11 years ago

[LoadUIWeb] Making Requests based on conditions

Hi,



I have a scneario to be tested with LoadUIWeb. This is a flight booking applicatoin. It will show list of PNRs for that flight.



Each PNR will have different no of passengers. We need open the PNR & check in those passengers one by one.





For example: PNR1 may have one passenger. I need to open it & click checkin button for that passenger.

PNR2 may have two passengers. I need to open it & click checkin button for passenger one. And then click checkin button for passenger2. and so on.



Is it possible to write something like script, to execute the check in request for all the available passengers with some number of virtual users.



I am able to do it by having PNRs & passenger details for each PNR in an excel sheet. But like to know loadcomplete has any feature to read the current page data and send request based ont he conditions it satisfies.





  • AlexKaras's avatar
    AlexKaras
    Champion Level 3
    Hi,



    No, this is not possible, according to my knowledge.

    Some time ago I had a discussion on the similair topic with SmartBear's Support and, while it still may be discussible, I generally agree with their point of view.

    The reason of absence of this functionality is because it is not related to load testing but is from the functional testing area.

    I.e., it is functional testing to check if, say, CheckIn button is enabled for the given PNR (have no idea what is this) until the number of checked-in passengers is not equal to or greater than the available number of seats. You may want to do concurrent testing of this functionality, i.e. check what happens if two or more users try to check-in if only one seat is left. But again, this is functional testing. To do the functional testing, you may consider functional testing tools like TestComplete (http://smartbear.com/products/qa-tools/automated-testing-tools).



    On the contrary, LoadUIWeb is a load testing tool. This means that it is designed to check if the tested server (not the client application!) can handle the given load. In your case this means that you may want to check, say, if the server can handle 100 simultaneous check-ins (for the same or different PNRs). This assumes that you must have PNRs of appropriate capacity available, request check-ins for them and check if none of the check-in requests failed and if they were processed within acceptable time period. This test does not and should not check if the given check-in request exceeds PNR's capacity or not. It should not do this because this is business functionality of your application which, as I said earlier, must be checked using functional testing means.

    Likewise, if some business logic is triggered when the final check-in occurs for the given PNR and end-user (e.g. dispatcher) receives some response, you may want to check if the server can handle the situation when 100 PNRs are closed simultaneously. For this test you may prepare 100 PNRs with only one seat still available, issue 100 requests and again check that all they passed and within acceptable time period. Then you may increase the number of PNRs and requests to 200 and check if the server can still handle this and so on.



    Note, that in all mentioned cases you are checking that your server can handle certain load assuming that the business logic of the tested application works correctly, but do not test the business logic itself.

    You may create tests combinations, i.e. for the above samples, you may want to check that your server can handle simultaneously 50 check-in requests and 50 PNRs post-actions. But again, this tests how the server handles the load, but not if the business logic works correctly.



    Hope that the above will help...