Web-Books
in the Austria-Forum
Austria-Forum
Web-Books
Informatik
The Future of Software Quality Assurance
Page - 31 -
  • User
  • Version
    • full version
    • text only version
  • Language
    • Deutsch - German
    • English

Page - 31 - in The Future of Software Quality Assurance

Image of the Page - 31 -

Image of the Page - 31 - in The Future of Software Quality Assurance

Text of the Page - 31 -

Testing in DevOps 31 definitiona customerhas.Business processescancovermultipleservices, andend- to-end testing will test the services of multiple teams. The responsibility of these end-to-endtestscancauseaproblembecause theycanbeownedbymultiple teams. One way to dealwith thisproblemis touse contract-based testing [11].DevOps lets you look at software as a service and it is common to create a contract for a service. Contract-based testing is verifying if the service upholds that contract. The tests should imitate a customer (or another service) and make sure there is no contract breach. If a company consists of multiple services and all teams have successfully implemented contract-based testing, you could even argue that there is no need for end-to-end testing anymore. The functionality should be covered in all contract and therefore in the tests. This, however, is only possible when the contractmatcheswiththecustomer’sneedsandnomistakesaremadeinthechainof contracts.Thereshouldbesomethingtocoveranydiscrepanciesbetweencontracts. End-to-end testing could be used to mitigate the risk in these discrepancies. In a microservices architecture [12] contract-based testing is a more applicable test strategy, because the architecture consists of multiple services. In a monolithic architectureitcanbemoredifficult toapplycontract-basetesting,becauseit ismore difficult to identifyservices that canbe individually tested. End-to-end testing that cover multiple teams could be made from small tests connectedtoeachother ina frameworkuntil theycover theentirebusinessprocess. Teamswillbe responsible fora smallpartof the tests andshouldofferhelp toother teams tomakesure the test chainwillwork.With thisapproachit is still possible to performend-to-endtestingwithDevOps teams. It requiresa lotofcoordinationand a testing frameworkthat supports the inputofmultiple teams. Incertainsituations,itcanandwillbemorefruitfultomakeoneteamresponsible for end-to-end testing when it covers multiple services. This team can deliver an end-to-endtestingserviceformultiple teams.DevOpsteamsshouldprovidecriteria for the tests for the parts that cover their service and should act on negative results from the tests. The end-to-end testing team should be responsible for making sure the tests will be executed, but the DevOps teams are still responsible for their own servicein these tests.Whateveryouchoose, it isbest toensurethata teamiscreated with theprincipleofcustomer-centricactionfirst. 3.2 Customer-CentricTesting The Agile Manifesto was the start of changing software development. It focusses highly on the process. In his book Specification by Example, Gojko Adzic writes: “building the product right and building the right product are two different things” [13].Hemakes thedistinctionbetween theprocessand theoutcomeof theprocess. While your process can be as you need it to be, there is no guarantee that the outcome of your process – your product/service– has the right quality. To achieve quality, a direct focus on the customer is needed, because they determine what the requirementsof your service should be. In this context it makes sense that the first
back to the  book The Future of Software Quality Assurance"
The Future of Software Quality Assurance
Title
The Future of Software Quality Assurance
Author
Stephan Goericke
Publisher
Springer Nature Switzerland AG
Location
Cham
Date
2020
Language
English
License
CC BY 4.0
ISBN
978-3-030-29509-7
Size
15.5 x 24.1 cm
Pages
276
Category
Informatik
Web-Books
Library
Privacy
Imprint
Austria-Forum
Austria-Forum
Web-Books
The Future of Software Quality Assurance