Software Engineering Testing

EECS 4313
Closed
York University
Toronto, Ontario, Canada
EL Community Liaison Coordinator
3
Timeline
  • October 17, 2022
    Experience start
  • November 1, 2022
    Project 1: Specification-based testing
  • November 15, 2022
    Project 2: Code-based testing
  • December 13, 2022
    Final Reports
  • December 13, 2022
    Experience end
Experience
1/1 project matches
Dates set by experience
Preferred companies
Anywhere
Any
Any industries

Experience scope

Categories
Information technology Software development
Skills
software engineering computer science
Student goals and capabilities

Bring on fourth year Computer Science students from York University's Lassonde School of Engineering to be your program tester, in a project-based experience. Students will work on one main project over the course of the semester.

Community partners are invited to present a specification-based and code-based testing challenge for the students to address for the duration of the semester.

Upon successful completion of the project, students should be able to produce quality written reports describing their testing.

Students

Students
Undergraduate
Any level
60 Students
Project
15 hours per Student
Students self-assign
Individual projects
Expected outcomes and deliverables

A final project outcome includes:

  1. A detailed report describing the complete set of test cases by which the system is tested. The document will include the software performance as well.
Project timeline
  • October 17, 2022
    Experience start
  • November 1, 2022
    Project 1: Specification-based testing
  • November 15, 2022
    Project 2: Code-based testing
  • December 13, 2022
    Final Reports
  • December 13, 2022
    Experience end

Project Examples

Requirements

Community partners are invited to present either a specification-based or code-based testing challenge, the criteria for each are listed below:

SPECIFICATION-BASED:

Students will learn specification-based unit testing methods including the use of equivalence class, boundary value and decision table. As part of the students learning, a community partner provides a document containing the specification of a project (i.e., the specification of a unit or a couple of units) and students are asked to prepare a document including a set of test cases that they think are required to (almost) comprehensively test the code. For example, if the unit is a function, students should be given the signature of the function. If the unit is a class, students should be given the UML of the class and the document that describes what each method is supposed to complete.

CODE-BASED:

Students will learn how to create a document containing the set of test cases that (almost) comprehensively covers all the paths in the code. For this assignment, no detailed specification is required, instead a very brief description of the unit is given. However, the code should be available to the students. The output of this project is a document that contains the set of test cases in addition to explanation of how much of the code is covered with this set of test cases. They are required to work with a software such as JCoCo (if the code is in java), to show the test coverage metric for the set of test cases that they have designed. The expectation from the industry partner is to provide the input (i.e., short description and the code) to this project.

Additional company criteria

Companies must answer the following questions to submit a match request to this experience:

  • Q - Checkbox
  • Q - Checkbox
  • Q - Text short
    How is your project relevant to the course?
  • Q - Checkbox