CSE 270: Software Testing

W04 Activity: Regression and Integration Tests

Overview

The developers have finally figured out how to connect the web site to a live weather data source and are ready to test it out. The developers have also moved the information about the member directory from a static file deployed with the web site to an API call that reads data from a back-end system. The requirements of the system haven't changed, but their implementation has! This means we need to do a regression test.

Your are tasked with creating new test cases to include manual integration tests that will verify the interactions between the web site and the weather API, as well as interactions between the web site and the new directory data web service. You must also decide which of your test cases should be run in consideration of the changes to the system that have been made. This is called a limited regression test.

Preparation

To complete the regression and integration tests you will need to setup some testing tools and and test environment. Complete the following Activities.

Installing the Source Code

Typically, the developers will give you an installation package of some kind to install on your local environment, or it will be installed automatically on a dedicated testing environment. Today you will receive a .zip file which contains all the files you need to run the web site.

Download the code to test here:

cse270-v12.zip ⇩

Extract the files to a well known location on your computer. This will create a folder called cse270 with the files you need. If you are unsure how to extract files from a ZIP archive, ask a classmate or your instructor for assistance. Then click these links and follow those instructions.

Create regression test plan

Instructions

You must have completed the previous activity W04 Activity: End to End Testing before beginning this activity.

Now you will create a limited regression test plan to perform further testing of features. Using the information in the Teton Chamber of Commerce Requirements v 1.1 requirements document. This test plan will include 2 new test cases one for each integration (weather and data). It will also include selected tests from each component to perform a limited regression test.

Create New Test Cases

You will need to add test cases in Squash to record the new tests.

  1. Open the Test cases section in Squash.
  2. Select Teton CoC.
  3. Create a new folder called Integration Tests
  4. Create a test case for the weather integration. Include steps to test the API using Postman, and compare the returned data to the data displayed on the web page.
  5. Create a test case for the Directory Data API. Include steps to use the browser developer tools to compare the data returned by the API to that displayed on the web page.

Create a Test Plan

Create a test plan that will validate the two API services and perform a limited regression test

  1. Open the Executions section in Squash.
  2. Select Teton CoC.
  3. Create a new campaign called Integration and Regression Test Plan.
  4. Add the following test cases
    • The Weather API test case just created.
    • The Data Directory API test case just created
    • Select existing test cases to perform a limited regression test. Use your test cases for the following requirements.
      • Common 1.2.1 Given the visitor is browsing any page of the site,
        when the visitor views the site header in the screen view
        then the link to the home page is clearly visible,
        and the link to the join page is clearly visible
        and the link to the directory page is clearly visible.
      • Home Page 2.2.1 Given the visitor is browsing the site home page,
        when the user view the hero image described
        then a button labeled “Join Us” will be prominently displayed over the hero image
        and clicking the “Join Us” button will take the user to the join page
      • Join Page 3.2.1 Given the visitor is browsing the site join page
        when the user views the page
        then a field for first name will be displayed
        and the user cannot submit the form when the first name field is empty
      • Directory Page 4.1.2 Given the user is browsing the directory page
        when the user views the directory page
        and the user clicks on the “list” button
        then a list of members of the chamber of commerce is visible
        and clicking the link to the member’s website will open the site in a new tab

Document your test plan

Create a PDF of the new test plan you have created

Execute the test

If you need a reminder, refer to the page Tutorial: Test Execution for specific instructions on how to execute tests.

  1. Create a new iteration for your Integration and Regression Test Plan Name the iteration yourname-W4R where yourname is your last name.
  2. This test will require you start your local test environment as instructed in the prepare portion of this assignment. Make sure the data service is started.
  3. Execute all the test cases in your limited regression plan. Execute your tests against the 1.2 version of the Teton Chamber of Commerce web site on your local test environment.
    • Use Postman to conduct the integration test against the Weather API. For more information see the page W04 Activity: Integration Testing Tools and Techniques
      • Take a screenshot of your test that shows the URL and the API response in Postman.
    • Use your browser Developer Tools to conduct the integration test against the Directory Data Service. For more information see the page W04 Activity: Integration Testing Tools and Techniques
      • Take a screenshot of your test in the browser that shows the API response
    • Document the results of executing the tests in the Squash iteration you created indicating pass or fail for each test.
    • If a test fails, enter the following information the defect tracker spreadsheet.
      • Defect date: The date the defect was found.
      • Status: New
      • User impact: Choose an impact you feel is appropriate.
      • Business impact: Choose an impact you feel is appropriate.
      • Subject: The test tile that failed e.g. 2.1.1 Hero image.
      • Reported By: Enter your name
      • Defect/Issue Describe: Describe the nature of the defect include specific details required to reproduce error.
      • Environment: Any relevant notes about the environment (for example, which browser was used, etc.)
    • Execute the remainder of the regression tests as you have done before.

Prepare Documentation

Create a new Execution progress report for this test.

  1. Navigate to the Reporting screen in Squash.
  2. Add a new Execution Progress Report.
  3. Name the report Integration and Regression.
  4. In the Criteria section click on the Select campaigns radio button.
  5. Expand the Campaigns list and select the Integration and Regression test plan.
    Select campaign
  6. Click the Confirm button to save your selection.
  7. Click the Add button to save this report.
  8. Click the Download button to run the report.
  9. Save both the Campaign monitoring dashboard and Test case status reports as pdf files.

Submission

Submit the following artifacts in canvas.

Useful Links: