517232804129f935f4062edfd2ac7a32.ppt
- Количество слайдов: 23
Data-driven Software Testing for Agile Development Priyadarshan Shinde, Cytel Ajay Sathe, Cytel Ph. USE 2011 –Brighton
Agenda § Key Issues in Conventional Automated Testing § Approach § Concept § Test Repository Walkthrough § Test Repository Advantages § Workbench § Advantages § Implementation Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 2
Key Issues in Conventional Automated Testing 1. Software being stable is a mandatory requirement 2. Scripts tend to be hard-coded, making maintenance a non-trivial and sometimes complex task 3. Object names tend to be long and unreadable. For instance, it may be difficult to see which control has the following name: Sys. Process('notepad'). Window('#32770', 'Font', 1). Window('Combo. Box', '', 3). Window('Edit', '', 1)). 4. Object name depends on object properties that may not be persistent 5. Operating System (OS) compatibility 6. Differences in coding styles of different testers 7. Tester needs to be fairly good at programming with the test script Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 3
Approach Si. Z® Dropdown List Labels Textboxes Buttons East® Grid Cytel Inc Plots TS 08 - Data-driven Software Testing for Agile Development 4
Concept Focus is on Control handling Action Value Control Set txtbox = Sys. Process("Architect"). (“ ”, “ ”) Find. Child Name Type 1 Error If txtbox. Exists = True Then txtbox. (“ ”) Set_Text 0. 05 Else Log. Error “Type 1 Error textbox was not found. ” End If Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 5
Test Repository Test Scenario Cytel Inc List of Controls Test Cases Modular Structure TS 08 - Data-driven Software Testing for Agile Development 6
Test Repository Test Scenario Cytel Inc List of Controls Test Cases Modular Structure TS 08 - Data-driven Software Testing for Agile Development 7
Test Repository List of Controls Test Scenario 1. 2. 3. 4. 5. Test Cases Modular Structure Click on Design Parameter tab Trial dropdown list, select “Superiority” Specify Power = 0. 9 Click on Compute button Verify results Test Case Step 1 Control Design Parameter Tab Cytel Inc Test Case Step 2 Action Value Property Validation Click NA NA Control Action Value Property Validation Trial Select Item Superiority TS 08 - Data-driven Software Testing for Agile Development 8
Test Repository Test Scenario Cytel Inc List of Controls Test Cases Modular Structure TS 08 - Data-driven Software Testing for Agile Development 9
Test Repository Walkthrough Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 10
Test Repository Walkthrough Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 11
Test Repository Advantages § § Reusability of test cases within the software § Reusability of test cases across different software § Cytel Inc Create test cases earlier Easy to handle the change requests TS 08 - Data-driven Software Testing for Agile Development 12
Test Repository Advantages Requirement Change Request Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 13
Test Repository Advantages List of Controls Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 14
Test Repository Advantages Test Cases Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 15
Workbench Search the Window Search the Control Setting a Process Perform Action Property Validation Test Result Test Repository AUTProcess Set P = Sys. Process( ) Test Repository Setting a Window Object Wnd. Object Control. Name Set = Sys. Process(P). Find. Child("Name", , 100) If Wnd. Object. Exists = True then Wnd. Object. Activate Log. Message("Specified Window is exist and activated") : : Else Log. Error(“Specified Window was not found”) End If Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 16
Workbench Search the Window Search the Control Perform Action Property Validation Test Result Finding a Control within the Window Wnd. Object. Refresh Test Repository Wnd. Object. Activate Set = Wnd. Object. Find. Child("Name", , 100) Control. Name If Control. Exists = True Then Control. Refresh Control. Activate : : Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 17
Workbench Search the Window Search the Control Perform Action Property Validation Test Result GUI Control Handling If Control. Exists = True Then Select Case Action Case "Click" Control. Click Case "Select. Item" Control. ( ) Click. Item Control. Value : : End Select Else Log. Error(“Control does not exist: ” & Control. Name) End If Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 18
Workbench Search the Window Search the Control Perform Action Property Validation Test Result Before Performing Action After Performing Action Property validation Actualvalue = Control. w. Text If Actualvalue = Expected. Value Then Log. Message(“Property Validation Passed”) Else Log. Error(“Property Validation failed”) End If Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 19
Workbench Search the Window Search the Control Property Validation Perform Action Test Result Workbench Test Repository Cytel Inc Test Log TS 08 - Data-driven Software Testing for Agile Development 20
Workbench Advantages § Portable Architecture Scripts Earlier Develop Test Cases, Between Tools § Minimized Maintenance § No Tool Expertise Needed to Create Test Cases § Drastic Reduction in Testing Time and Effort Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 21
Implementation § Si. Z® § Compass® Test. Complete™ § Architect § East ® Cytel Inc Microsoft® Visual Studio® TS 08 - Data-driven Software Testing for Agile Development 22
Questions Contact Priyadarshan Shinde | priyadarshan. s@cytel. com | +91 20 6604 0106 Ajay Sathe | ajay. sathe@cytel. com | +91 20 6604 0119 Cytel Statistical Software & Services Pvt. Ltd. , 8 th Floor, Siddharth Towers, Off Karve Road, Kothrud, Pune 411029, India Cytel Inc TS 08 - Data-driven Software Testing for Agile Development 23