Java Midterm Exam
The midterm exam will be rescheduled due to the restrictions imposed by the COVID-19 outbreak.
- Date: 2020-03-18
- Time: 14:30
- Duration: 2 hours
- Rooms: B104, B207, B208, B213
- This exam consists in writing a set of Java classes, so as to pass a series of provided tests in JUnit.
- The classification is proportional to the number of tests run successfully, assuming that the code is generic enough to pass similar tests.
- There is a minimum score of 40% (40% of the test methods provided must pass).
- The test code is self-explanatory concerning desired functionality.
- The program should be developed iteratively, following the order of test cases provided, although some (if not all) of these are independent (and therefore able to be resolved in a different order).
- As some classes do not exist until you have created them, tests will not run due to compilation errors. For that reason tests are commented by default. This makes it easier to solve each test individually. Just uncomment each test as you progress.
- You are not supposed to change the test cases. Changing the test cases is not the same as solving the test cases!
- Your code will be evaluated using the provided test cases but with different data!
Consultation of any reference materials (printed sheets, books, electronic media) is not allowed, except for the ones provided during the exam:
- Java lecture slides.
- The JAVA API documentation.
- The test will have a duration of 120 minutes.
- Upon starting the test, no one will be allowed to leave the room, unless they have already submitted their resolution, or have a compelling motive that will justify leaving and returning (at the teacher’s discretion). There will be no bathroom leaves, so go before starting the test.
In the actual exam, you will use Juet (a Java Unit-testing Evaluation Tool) to upload your source code.
Some important notes regarding Juet:
- You should use your FEUP credentials (username without the @fe.up.pt) to login.
- A secret code will be provided by your teachers at the beggining of the exam.
- You will be able to download the project containing the test cases directly from Juet.
- The project does not have Gradle initialized. To run the tests, just right-click on the test file and select “Run All Tests”.
- For simplicity sake, tests and source code are in the same folder.
- For simplicity sake, tests and classes should remain in the default package.
- All tests are commented by default. This makes it easier to solve each test individually.
- In the exam, the top right corner will have a countdown timer with the remaining time. After this timer reaches zero, no more submissions will be accepted. Please submit early.
- You only have to submit your Java files. You can select many files at the same time.
- Evaluation is automatic but not immediate.
Below you will find some past exams using Juet:
Juet can only be accessed from inside FEUP or by using VPN.
The secret code for these example exams is 1234 (in the real exam, a different secret code will be provided by your teacher).