ABSTRACT
Java is a multi-purpose programming language revolving around the concepts of objects and classes. JUnit is a unit testing framework for Java developers to write test codes and execute testing for highly reliable and bug-free codes. Previously, to assist self-studies by novice students, we have developed the Java programming learning assistant system (JPLAS), and implemented the personal answer platform on Node.js. JPLAS offers several types of exercise problems at different learning levels. In JPLAS, Phrase Fill-in-blank Problem (PFP) requests to fill in the blanks in a given source code with one or multiple elements, and Code Writing Problem (CWP) requests to answer a source code that will pass a given test code. Any answer is automatically marked on the platform by string matching with the correct one for PFP and by unit testing for CWP. In this paper, we present an implementation of PFP for test code reading studies in JPLAS. It is expected that students can easily start solving CWP after PFP. As preliminary evaluations, we generated five PFP instances from five source codes with corresponding test codes, and assigned them to 15 undergraduate students in State Polytechnic of Malang, Indonesia. The results confirmed that the proposal is proper for novice students to study test code reading by JPLAS.
- [1] "What is JUnit" https://www.simplilearn.com/tutorials/java-tutorial/what-is-junit#GoTopGoogle Scholar
- [2] S. T. Aung, N. Funabiki, L. H. Aung, H. Htet, H. H. S. Kyaw and S. Sugawara, "An Implementation of Java Programming Learning Assistant System Platform Using Node.js," 2022 10th International Conference on Information and Education Technology (ICIET), Matsue, Japan, 2022, pp. 47-52, https://doi.org/10.1109/ICIET55102.2022.9779047Google ScholarCross Ref
- [3] X. Lu, N. Funabiki, H. H. S. Kyaw, E. E. Htet, S. L. Aung, and N. K. Dim, ”Value trace problems for code reading study in C programming,” Adv. Sci. Tech. Eng. Syst. J. (ASTESJ), vol. 7, no. 1, pp. 14-26, Jan. 2022, https://doi.org/10.25046/aj070103Google ScholarCross Ref
- [4] X. Lu, S. Chen, N. Funabiki, M. Kuribayashi and K. Ueda, "A Proposal of Phrase Fill-in-blank Problem for Learning Recursive Function in C Programming," 2022 IEEE 4th Global Conference on Life Sciences and Technologies (LifeTech), Osaka, Japan, 2022, pp. 123-124, https://doi.org/10.1109/LifeTech53646.2022.9754593Google ScholarCross Ref
- [5] K. H. Wai, N. Funabiki, S. T. Aung, K. T. Mon, H. H. S. Kyaw and W. -C. Kao, "An Implementation of Answer Code Validation Program for Code Writing Problem in Java Programming Learning Assistant System," 2023 11th International Conference on Information and Education Technology (ICIET), Fujisawa, Japan, 2023, pp. 193-198, https://doi.org/10.1109/ICIET56899.2023.10111392Google ScholarCross Ref
- [6] Tung, Sho-Huan, Tsung-Te Lin, and Yen-Hung Lin. "An Exercise Management System for Teaching Programming." J. Softw. vol.8, no.7, 2013, pp.1718-1725, http://www.jsoftware.us/vol8/jsw0807-19.pdfGoogle Scholar
- [7] Robinson, Philip E., and Johnson Carroll. "An online learning platform for teaching, learning, and assessment of programming." 2017 IEEE Global Engineering Education Conference (EDUCON). IEEE, 2017, https://doi.org/10.1109/EDUCON.2017.7942900Google ScholarCross Ref
- [8] X. Lu, N. Funabiki, S. T. Aung, Y. Jing and S. Yamaguchi, "An Implementation of Java Programming Learning Assistant System in University Course," 2023 11th International Conference on Information and Education Technology (ICIET), Fujisawa, Japan, 2023, pp. 215-220, https://doi.org/10.1109/ICIET56899.2023.10111422Google ScholarCross Ref
- [9] "Java getting started, Java encapsulation, Java if... else", https://www.w3schools.com/java/default.aspGoogle Scholar
- [10] "Overriding in Java", https://www.tutorialspoint.com/overriding-in-java-programmingGoogle Scholar
- [11] "find largest element in an array", https://www.geeksforgeeks.org/java-program-for-program-to-find-largest-element-in-an-array/Google Scholar
Index Terms
- An Implementation of Phrase Fill-in-blank Problem for Test Code Reading Study in Java Programming Learning Assistant System
Recommendations
A design-aware test code approach for code writing problem in Java programming learning assistant system
To advance Java programming educations, we have developed the web-based Java programming learning assistant system JPLAS that provides the code writing problem. This problem asks a student to write a source code for a given assignment, where the ...
A Static Approach to Prioritizing JUnit Test Cases
Test case prioritization is used in regression testing to schedule the execution order of test cases so as to expose faults earlier in testing. Over the past few years, many test case prioritization techniques have been proposed in the literature. Most ...
A Proposal of Statement Fill-in-Blank Problem in Java Programming Learning Assistant System
IIAI-AAI '15: Proceedings of the 2015 IIAI 4th International Congress on Advanced Applied InformaticsAs a reliable, portable, and practical programming language, Java has been educated in many universities and professional schools. To assist Java educations, we have developed a Web-based Java Programming Learning Assistant System (JPLAS). JPLAS ...
Comments