RTE protocol script recording in VuGen LoadRunner
Terminal Emulation (RTE):
Emulation of users who submit input to, and receive output from, character-based applications. VuGen LoadRunner has its own internal terminal emulator using which it connects to the application.
RTE Vuser:
- RTE Vuser operates terminal emulator in order to load test client/server base applications.
- Terminal emulator session is a collection of a real user’s actions.
- RTE Vuser types character input into a terminal emulator, submits the data to a server, and then waits for the server to respond.
- LoadRunner uses PowerTerm as a terminal emulator for emulating RTE session.
- PowerTerm works like a standard terminal emulator, supporting common protocols such as IBM 3270 & 5250, VT100 and VT220.
- VuGen records the terminal setup and connection procedure into the script.
Procedure:
- Click on New Script.
- Select Single Protocol Script and in All Protocols category choose Terminal Emulation (RTE).
- Click on Create for creating script and then click on Start Recording.
- PowerTerm Emulator will show up.
- Click on Communication menu and then click on Connect.
- In Connect window choose Terminal type: 3270 Display
- It will automatically set the default settings like Session Type, Terminal ID, and Port Number according to your Terminal Type value.
- You can change them according to your need.
- Enter Host Name, which is given in Test Plan.
- Click on Connect, it will connect to the server then follow the business flow given in test plan.
- When you are done with your business flow then stop recording.
- Now you can enhance your recorded script with transactions and synchronization functions.
Challenge 1: Finding blank row on Terminal screen to add user inputs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | char text[100]; /* suppose top rows are reserved for function description and user can input data from 6<sup>th</sup> row onwards and total rows are 22 */ int row=6; int flag=TRUE; //Finding the blank row to add user inputs while (flag){ //If it’s End of page then start from next page if (row==22) { TE_type(""); TE_wait_sync(); row=6; } TE_get_text_line(5,row,1, text); if (strcmp(text,"_")==0){ flag=FALSE; break; } row++; } TE_set_cursor_pos(2,row); |
Challenge 2: Handling transaction status using Text Check on terminal screen
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | lr_start_transaction("T01_Modify_AccountDetails"); TE_type("{p_Amount}"); TE_wait_sync(); iReturn=TE_find_text ("RECORD(S) PROCESSED SUCCESSFULLY.", 1,22,40,22, &col, &row, match); lr_output_message("value:%d", iReturn); if (iReturn==0){ lr_end_transaction("T01_Modify_AccountDetails ",LR_PASS); }else{ lr_end_transaction("T01_Modify_AccountDetails ",LR_FAIL); } |