{"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00214571","sets":["934:935:10774:10775"]},"path":["10775"],"owner":"44499","recid":"214571","title":["Experience in Testing MPI+Java Parallel and Distributed Programs with JUnit"],"pubdate":{"attribute_name":"公開日","attribute_value":"2022-01-05"},"_buckets":{"deposit":"47b22c18-8c66-441f-96b6-336135f286b5"},"_deposit":{"id":"214571","pid":{"type":"depid","value":"214571","revision_id":0},"owners":[44499],"status":"published","created_by":44499},"item_title":"Experience in Testing MPI+Java Parallel and Distributed Programs with JUnit","author_link":["551532","551528","551530","551531","551527","551529","551533","551526"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"Experience in Testing MPI+Java Parallel and Distributed Programs with JUnit"},{"subitem_title":"Experience in Testing MPI+Java Parallel and Distributed Programs with JUnit","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[発表概要, Unrefereed Presentatin Abstract] ","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2022-01-05","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"Graduate School of System Informatics, Kobe University"},{"subitem_text_value":"Graduate School of System Informatics, Kobe University"},{"subitem_text_value":"Graduate School of System Informatics, Kobe University"},{"subitem_text_value":"Graduate School of Science, Technology and Innovation, Kobe University"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Graduate School of System Informatics, Kobe University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of System Informatics, Kobe University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of System Informatics, Kobe University","subitem_text_language":"en"},{"subitem_text_value":"Graduate School of Science, Technology and Innovation, Kobe University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"eng"}]},"item_publisher":{"attribute_name":"出版者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/214571/files/IPSJ-TPRO1501006.pdf","label":"IPSJ-TPRO1501006.pdf"},"date":[{"dateType":"Available","dateValue":"2024-01-05"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO1501006.pdf","filesize":[{"value":"32.1 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"0","billingrole":"5"},{"tax":["include_tax"],"price":"0","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"832dad1d-2089-47cb-b5fb-22de7dbe807a","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2022 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Patrick, Finnerty"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Yoshiki, Kawanishi"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Tomio, Kamada"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Chikara, Ohta"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Patrick, Finnerty","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Yoshiki, Kawanishi","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Tomio, Kamada","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Chikara, Ohta","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_3_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AA11464814","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_3_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7802","subitem_source_identifier_type":"ISSN"}]},"item_3_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"Testing is a vital part of software development, with many frameworks available for popular programming languages. JUnit is among the most popular frameworks for Java, with excellent integration into current IDEs and Java build and reporting tools. As part of the ongoing development of a Java distributed collection library, we started using this framework to test our software. While many parts of our program can be tested using a single process, we were unable to test the distributed features of our library that rely on MPI with the standard JUnit framework. This was particularly problematic as these parts of the program are the most error-prone due to the distributed and undeterministic nature of the runtime we use. To remediate this situation we developed MPI-JUnit, a custom “JUnit Runner” that allows us to run JUnit tests in an MPI multi-process environment. In this presentation, we succinctly present the implementation of this custom “Runner” and how it seamlessly integrates with existing Java tools such as the Eclipse IDE, Maven, and GitLab Continuous Integration. We also demonstrate how we use these tools as well as a distributed logging system to address the difficult nature of distributed and multithreaded environments.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"Testing is a vital part of software development, with many frameworks available for popular programming languages. JUnit is among the most popular frameworks for Java, with excellent integration into current IDEs and Java build and reporting tools. As part of the ongoing development of a Java distributed collection library, we started using this framework to test our software. While many parts of our program can be tested using a single process, we were unable to test the distributed features of our library that rely on MPI with the standard JUnit framework. This was particularly problematic as these parts of the program are the most error-prone due to the distributed and undeterministic nature of the runtime we use. To remediate this situation we developed MPI-JUnit, a custom “JUnit Runner” that allows us to run JUnit tests in an MPI multi-process environment. In this presentation, we succinctly present the implementation of this custom “Runner” and how it seamlessly integrates with existing Java tools such as the Eclipse IDE, Maven, and GitLab Continuous Integration. We also demonstrate how we use these tools as well as a distributed logging system to address the difficult nature of distributed and multithreaded environments.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"12","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"12","bibliographicIssueDates":{"bibliographicIssueDate":"2022-01-05","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"1","bibliographicVolumeNumber":"15"}]},"relation_version_is_last":true,"weko_creator_id":"44499"},"id":214571,"updated":"2025-01-19T16:33:43.112342+00:00","links":{},"created":"2025-01-19T01:15:22.926987+00:00"}