370 likes | 499 Views
Adopt Smartesting technology with Model Based Testing. 1. Agile functional testing with a model-driven approach. Kalyan Talluri Senior Consultant Kalyan.talluri@smartesting.com. Agile Testing Model driven testing Model for Test Generation MDT Tools
E N D
Agile functional testing with a model-driven approach Kalyan Talluri Senior Consultant Kalyan.talluri@smartesting.com
Agile Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Agile Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Agile Environment • The time between two deliveries is short, and test suites must pass at all times. • Functional changes are frequently changing • Technical changes are frequently changing • Testing Challenges • Poor Quality of test cases : How could a tester be efficient in scanning the changes in a few hundred tests repository, making the changes without a mistake and then executing them, all this inside a run • Less Productivity: Frequent changes mean a lot of regression . testing. Test design, manual execution & automation is time taking • Higher Cycle time to Deliver : Due to Manual test design & regression testing, testing duration will be increased for next iteration. Agile Testing
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
is a partial description of Model System can be run against are derived from Abstract tests Executable tests are abstract versions of Model-DrivenTesting: What and Why? “The complexity of applications requires a smart approach to test design” Limitations of manual test design • Applications can be complex, risky • Requirements are lacking detail and changing • Time-Consuming, labor-intensive • High level test design knowledge required • Chance on human errors • Expensive maintenance (manual rework) • Late detection of specification omissions • Difficult proof of test coverage Modeldriventesting • Model-driven testing refers to the processes and techniques for the automatic derivation of abstract test cases from abstract formal models, the generation of concrete tests from abstract tests, and the manual or automated execution of the resulting concrete test cases.
MDT Applicability Model-driven testing for enterprise software targets the key categories of black-box functional testing: • Several testing levels: • Acceptance testing • System integration testing • System testing • Various testing types within these levels: • Risk and Requirements Based Testing • End-to-end testing • Regression testing • Combinatorial testing • Using several accessibility modes: • GUI-based testing • API-based testing • Application testing & Component integration testing • Batch application testing Levels of Testing
Model driven testing in the scrum process Model-based testing Working increment of models for test generation
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Task Lane Gateway BPM Notation Overview Connector Event Events Call Activities
State machines State Transitions Effect Trigger Initial state Guard Internal transition Choice point
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Model-based test case generators Model-based test case generators MDT Tools • CertifyIt from Smartestingtakes business process and behavioral models as input. It uses the standard modeling notations BPMN and a sub-part of UML. SmartestingCertifyIt targets enterprise software for system testing, acceptance testing, end-to-end testing, and regression testing. • Designer from Conformiqtakes as input UML state machines with a proprietary action language (QML – Qtronic Modeling Language). QML is a superset of the Java programming language. Conformiq tools have a special focus on datacom and telecom equipment vendors as well as service providers. Spec Explorer fromMicrosoft takes as input state-oriented model programs that are coded in C#, and targets component and system testing;
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Case Study–ActitimeReqs sprint1 ----admin functions (flow, params, Business rules, documentation) login as admin, create customer,createproject,create user sprint2 - user functions (flow, params, Business rules, documentation) login as user, Add task, enter time, save time, view Time Track, view report sprint3 - (flow, params, Business rules, documentation) login as admin, delete user, delete customer, delete project, extra field in create project -----Project Description documentation change in enter time ----little change add a business rule in create user ----Email as User Name
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Summary-Benefits of MDT • Tests are available earlier in the process • Improved quality of the test cases (coverage and usability) • Test maintenance facilitated • Capitalization on test assets (reuse) • Same service level with reduced QA budget • Easier automation by a native support of Keyword-Driven Testing • Automated traceability links of business requirements • No restriction in technologies • No restriction on test strategies (acceptance, end-to-end, …) • Testing becomes real fun!
Agile in Testing • Model driven testing • Model for Test Generation • MDT Tools • MDT for Agile Testing - Case Study: Actitime • Summary • Q&A Agenda
Q&A twitter.com/smartesting Thank you for your attention