Reusing Test Asset in Software Factories


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Reusing Test Asset in Software Factories

  1. 1. Reusing Test Asset in Software Factories Jorge A. M. Corrêa de Oliveira [email_address]
  2. 2. Summary <ul><li>Introduction </li></ul><ul><li>Fundaments of Testing </li></ul><ul><li>Formal Verification, Testability and Testing </li></ul><ul><li>Component Testing in a Software Engineering Process </li></ul><ul><li>Phases of Testing </li></ul><ul><li>Test Automation </li></ul><ul><li>Testing in C.E.S.A.R </li></ul><ul><li>Motorola Brazil Test Center </li></ul>
  3. 3. Formal Verification, Testability and Testing <ul><li>[VOAS et al, 1995] </li></ul><ul><ul><li>Combine Testability, Formal Verification and Testing </li></ul></ul><ul><ul><li>Testability </li></ul></ul><ul><ul><li>&quot;The degree to which a system or component facilitates the establishent of test criteria and the performance of tests to determine whether those criteria have been met.” </li></ul></ul><ul><ul><li>IEEE Standard Glossary of Software Engineering Technology </li></ul></ul><ul><ul><li>Formal Verification </li></ul></ul><ul><ul><li>“ Process of evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.” </li></ul></ul><ul><ul><li>IEEE Standard Glossary of Software Engineering Technology </li></ul></ul><ul><ul><li>Testing </li></ul></ul><ul><ul><ul><li>????????? </li></ul></ul></ul>
  4. 4. Component Testing in a Software Engineering Process <ul><li>[GOUVEIA, 2004] </li></ul><ul><ul><li>“ unir o processo de teste ao processo de desenvolvimento do software, isto é, fazer com que estas duas etapas ocorram paralelamente e de forma colaborativa, e não uma após a outra.” </li></ul></ul>
  5. 5. Phases of Testing <ul><li>[WHITTAKER, 2000] </li></ul><ul><ul><li>Modeling the software’s enviroment </li></ul></ul><ul><ul><ul><li>1 st Point </li></ul></ul></ul><ul><ul><ul><li>2 nd Point </li></ul></ul></ul><ul><ul><li>Selecting test scenarios </li></ul></ul><ul><ul><ul><li>1 st Point </li></ul></ul></ul><ul><ul><ul><li>2 nd Point </li></ul></ul></ul><ul><ul><li>Running and evaluating test scenarios </li></ul></ul><ul><ul><ul><li>1 st Point </li></ul></ul></ul><ul><ul><ul><li>2 nd Point </li></ul></ul></ul><ul><ul><li>Measuring testing progress </li></ul></ul><ul><ul><ul><li>1 st Point </li></ul></ul></ul><ul><ul><ul><li>2 nd Point </li></ul></ul></ul>
  6. 6. Software Test Automation <ul><li>Advantages </li></ul><ul><ul><li>1 st Point </li></ul></ul><ul><ul><li>2 nd Point </li></ul></ul><ul><li>Disadvantages </li></ul><ul><ul><li>1 st Point </li></ul></ul><ul><ul><li>2 nd Point </li></ul></ul><ul><li>Statistically </li></ul><ul><ul><li>1 st Point </li></ul></ul><ul><ul><li>2 nd Point </li></ul></ul><ul><li>How to make it worthful? </li></ul><ul><ul><li>1 st Point </li></ul></ul><ul><ul><li>2 nd Point </li></ul></ul>
  7. 7. Tests on C.E.S.A.R <ul><li>Motorola E2E </li></ul><ul><ul><li>Web Testing </li></ul></ul><ul><li>Motorola P2K Brazil Test Center </li></ul><ul><ul><li>Mobile software testing </li></ul></ul>
  8. 8. Brazil Test Center <ul><li>BTC Test Design </li></ul><ul><ul><li>Writes test cases based on scaped defects </li></ul></ul><ul><li>BTC Test Execution </li></ul><ul><ul><li>Runs Sanity, Regression, Integration and Load Tests </li></ul></ul><ul><li>BTC Feature Test </li></ul><ul><ul><li>Writes test cases based on software requirements and Executes the test cases </li></ul></ul><ul><li>BTC Test Automatic Execution </li></ul><ul><ul><li>Executes Automated Test Cases for Sanity, Integration and Stress Tests </li></ul></ul><ul><li>BTC Test Automation </li></ul><ul><ul><li>Develops a Test Automation Framework and Automated Test Cases </li></ul></ul>
  9. 9. Reuse in Test Design <ul><li>High Level Test Cases </li></ul><ul><ul><li>What is? </li></ul></ul><ul><ul><li>Why? </li></ul></ul><ul><ul><li>How to? </li></ul></ul>
  10. 10. Reuse in Test Execution <ul><li>Execution History </li></ul><ul><ul><li>What is? </li></ul></ul><ul><li>Automation of the tests’ initial condition </li></ul><ul><ul><li>What is? </li></ul></ul>
  11. 11. Test Automation: Reuse <ul><li>Framework based on reuse </li></ul><ul><ul><li>Implementation + Design </li></ul></ul><ul><ul><li>Design Patterns </li></ul></ul><ul><ul><ul><li> Memento  Composite </li></ul></ul></ul><ul><ul><ul><li> Builder  Facade </li></ul></ul></ul><ul><ul><ul><li> Visitor  Template Method </li></ul></ul></ul><ul><ul><ul><li> Abstract Factory  Singleton </li></ul></ul></ul><ul><ul><ul><li> Adapter  Bridge </li></ul></ul></ul><ul><ul><li>Same test case for all kinds of software </li></ul></ul><ul><ul><li>More than 6 executions per machine </li></ul></ul>
  12. 12. References <ul><li>[VOAS et al, 1995] Jeffrey M. Voas and Keith W. Miller, Software Testability: The New Verification , IEEE Software, May 1995. </li></ul><ul><li>[WHITTAKER, 2000] James A. Whittaker, What is Software Testing? And Why Is It So Hard? , IEEE Software, Practice Tutorial, January 2000. </li></ul><ul><li>[GOUVEIA, 2004] Cidinha C. Gouveia, Testes de Integração para Sistemas Baseados em Componentes . Master’s thesis , UFCG, July 2004. </li></ul><ul><li>[OLIVEIRA et al, 2005] Jorge Corrêa de Oliveira, Cidinha C. Gouveia, Romulo Quidute, Test automation viability analysis method , November 2005. </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.