Student forms / form2-courses
form2-courses
Show Courses queries COURSE and shows the Courses window; choosing another course coordinates its sections (ON-POPULATE-DETAILS, QUERY_MASTER_DETAILS, CHECK_PACKAGE_FAILURE); close hides the window and returns to the instructors.
Three runs from a fresh database gave byte-identical diffs. Behaviour that looks odd in the migrated app but is the original's: faithful to the original and waivers. Files: scenario, golden record, target record, diff (JSON).
Scenario steps
Items are addressed by their Forms name (BLOCK.ITEM[row]), the same name in the
original and, through the mapping, in the migrated app.
| # | Step | Action | Checked on the original |
|---|---|---|---|
| 0 | Open form QAFE_FORM2 | ||
| 1 | show courses | Click INSTRUCTOR.PUSH_BUTTON1 | |
| 2 | second course | Click COURSE.DESCRIPTION[1] | |
| 3 | third course | Click COURSE.DESCRIPTION[2] | |
| 4 | close | Click SECTION.PUSH_BUTTON3 |
Screens, step by step
Left: the original Oracle Forms application, recorded on a virtual display. Right: the migrated application in headless Chromium. Screenshots are evidence only; the comparison works on the recorded values.
Step 0: open QAFE_FORM2
Step 1: show courses
Step 2: second course
Step 3: third course
Step 4: close
Golden record of the original
After each step: the focus, the displayed values that changed, the message line and any alert. The full record (every item of every step, windows, lists of values) is in the JSON file.
| # | Step | Action (by name) | Focus after | Displayed values that changed | Message line | Alert | Expect |
|---|---|---|---|---|---|---|---|
| 0 | Open form QAFE_FORM2 | INSTRUCTOR.FIRST_NAME[0] | INSTRUCTOR.FIRST_NAME[0] = FernandINSTRUCTOR.FIRST_NAME[1] = TomINSTRUCTOR.FIRST_NAME[2] = NinaINSTRUCTOR.FIRST_NAME[3] = GaryINSTRUCTOR.FIRST_NAME[4] = AnitaINSTRUCTOR.FIRST_NAME[5] = ToddINSTRUCTOR.FIRST_NAME[6] = MarilynINSTRUCTOR.FIRST_NAME[7] = CharlesINSTRUCTOR.FIRST_NAME[8] = RickINSTRUCTOR.FIRST_NAME[9] = JesseINSTRUCTOR.LAST_NAME[0] = HanksINSTRUCTOR.LAST_NAME[1] = WojickINSTRUCTOR.LAST_NAME[2] = SchorinINSTRUCTOR.LAST_NAME[3] = PertezINSTRUCTOR.LAST_NAME[4] = MorrisINSTRUCTOR.LAST_NAME[5] = SmytheINSTRUCTOR.LAST_NAME[6] = FrantzenINSTRUCTOR.LAST_NAME[7] = LowryINSTRUCTOR.LAST_NAME[8] = ChowINSTRUCTOR.LAST_NAME[9] = ThomassonINSTRUCTOR.PHONE[0] = 2125551212INSTRUCTOR.SALUTATION[0] = MrINSTRUCTOR.STREET_ADDRESS[0] = 100 East 87thINSTRUCTOR.ZIP[0] = 11510 | ||||
| 1 | show courses | Click INSTRUCTOR.PUSH_BUTTON1 | COURSE.DESCRIPTION[0] | COURSE.DESCRIPTION[0] = Dutch GrammarCOURSE.DESCRIPTION[1] = English GrammarCOURSE.DESCRIPTION[2] = MathematicsSECTION.CAPACITY[0] = 25SECTION.CAPACITY[1] = 25SECTION.CAPACITY[2] = 25SECTION.LOCATION[0] = Glass RoomSECTION.LOCATION[1] = Glass RoomSECTION.LOCATION[2] = Glass RoomSECTION.START_DATE_TIME[0] = 29-APR-2016SECTION.START_DATE_TIME[1] = 29-MAY-2016SECTION.START_DATE_TIME[2] = 28-JUN-2016 | |||
| 2 | second course | Click COURSE.DESCRIPTION[1] | COURSE.DESCRIPTION[1] | SECTION.CAPACITY[0] = 20SECTION.CAPACITY[1] = 20SECTION.CAPACITY[2] = 200SECTION.CAPACITY[3] = 200SECTION.LOCATION[0] = Brain RoomSECTION.LOCATION[1] = Brain RoomSECTION.LOCATION[2] = Presentation RoomSECTION.LOCATION[3] = Presentation RoomSECTION.START_DATE_TIME[0] = 30-APR-2016SECTION.START_DATE_TIME[1] = 07-MAY-2016SECTION.START_DATE_TIME[2] = 14-MAY-2016SECTION.START_DATE_TIME[3] = 28-MAY-2016 | |||
| 3 | third course | Click COURSE.DESCRIPTION[2] | COURSE.DESCRIPTION[2] | SECTION.CAPACITY[0] = 15SECTION.CAPACITY[1] = 15SECTION.CAPACITY[2] = 15SECTION.LOCATION[2] = Brain RoomSECTION.START_DATE_TIME[0] = 05-MAY-2016SECTION.START_DATE_TIME[1] = 04-JUN-2016SECTION.START_DATE_TIME[2] = 24-JUN-2016 | |||
| 4 | close | Click SECTION.PUSH_BUTTON3 | INSTRUCTOR.FIRST_NAME[0] |
Database effects
None: the scenario changes no row and draws no sequence value.
Classified diff against the migrated app
Diff: form2-courses counts: match 580, tolerated 0, waived 0, defect 0, unmapped 0, harness 0 generated-id pairs (source -> target): none waivers: S1 [proposed] Screen-reader announcement of the COURSE_NO item read as a message: applied to 0 value(s)
Waivers
No waiver applies to this scenario: every compared value matches or is within the tolerance policy.









