TDDD04 Software Testing
Last Update: 2016-08-17, 13:52 MEST
OverviewThe lab assignments are a compulsory part of the course, and much of your work during the course will be conducted on the lab assignments. Software Testing is a diverse discipline, though, and this lab course attempts to reflect that. You will have the chance to train how to use software engineering tools for automated testing, train in the art and practice of understanding and testing software manually, collaborate in teams to solve integration-testing assignments, and experiment with cutting-edge research software. The picture below gives you an overview of the lab series. We have outlined how you will come in contact with both research, techniques and practices during these lab assignments.
One of the most central aspects of the lab assignments is that you will collaborate in pairs, as well as in larger groups. In WebReg, you will be able to register for participating in the lab series in groups A1, A2 etcetera. Within those groups, you will collaborate in all lab assignments, to a smaller or greater extent. These are the lab assignments this year:
- Lab 1: Unit testing
- Lab 2: Symbolic execution
- Lab 3: Exploratory testing
- Lab 4: Integration testing
- Lab 5: Model-based testing
Sign up in WebReg to a group, and note lab hours specific to your group. In the schedule, groups are labelled A, B, C. A means all WebReg groups beginning with the letter A, and so on.
Also, read the instructions for how to use Git and Gitlab during the lab series, as we will use those tools extensively.
Collaboration in teams
We want you to share and review solutions to the questions in each lab with your peers in your WebReg groups, so that two or three pairs share solutions with one another. Either, two pairs share code, or three pass solutions to one another, so that each pair receives one solution to review and submits their solution to another pair for review. The only exception to this rule is the integration testing lab, in which the entire WebReg group conducts the lab assignment together, and submits reports on Gitlab afterwards.
The purpose of collaborating in this way is for you to being more confident in assessing your own skills and achievements, and those of your peers. The course staff will give you feedback as well, but we may not be able to provide detailed feedback on all your submissions.
Reporting your results
You are required to provide reports to demonstrate that you have
completed each task from each lab. Your results shall be uploaded to
you shall have one repository per pair, with a mnemonic name. If you are
pair 1 in WebReg group A1, your common Gitlab project should be called
TDDD04-YEAR-A1-1, where YEAR is the current year. Provide
your assistant with reporter access to your project, so he or she can
review your solutions. Your project shall contain directories with
names that correspond to each lab assignment as above.
To complete the lab assignments, you are assumed to have reviewed
each others' solutions as described above, and your assistant will
focus on providing help during lab sessions, and check that you have
passed the assignments by asking directed questions when you feel that
you are done with the assignment. To successfully complete each lab,
you are therefore required to be present during lab sessions and
demonstrate your solutions. When you do, you must be able to
demonstrate that you have uploaded a lab report according to the
instructions for each lab. Do not expect to be able to demonstrate
everything at the last minute though, as that will not be practically
possible. Those within each WebReg group who have shared and reviewed
each others' solutions demonstrate together, although you
will have to answer questions about your solutions individually.
Page responsible: Ola Leifler
Last updated: 2016-08-17