{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T01:52:03Z","timestamp":1770256323133,"version":"3.49.0"},"reference-count":110,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2024,3,15]],"date-time":"2024-03-15T00:00:00Z","timestamp":1710460800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Fundamental Research Funds"},{"name":"Central Universities","award":["226-2022-00064"],"award-info":[{"award-number":["226-2022-00064"]}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"crossref","award":["62141222"],"award-info":[{"award-number":["62141222"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Softw. Eng. Methodol."],"published-print":{"date-parts":[[2024,3,31]]},"abstract":"<jats:p>\n            Test smell refers to poor programming and design practices in testing and widely spreads throughout software projects. Considering test smells have negative impacts on the comprehension and maintenance of test code and even make code-under-test more defect-prone, it thus has great importance in mining, detecting, and refactoring them. Since Deursen et\u00a0al. introduced the definition of \u201ctest smell\u201d, several studies worked on discovering new test smells from test specifications and software practitioners\u2019 experience. Indeed, many bad testing practices are \u201cobserved\u201d by software developers during creating test scripts rather than through academic research and are widely discussed in the software engineering community (e.g., Stack Overflow)\u00a0[\n            <jats:xref ref-type=\"bibr\">70<\/jats:xref>\n            ,\n            <jats:xref ref-type=\"bibr\">94<\/jats:xref>\n            ]. However, no prior studies explored new bad testing practices from software practitioners\u2019 discussions, formally defined them as new test smell types, and analyzed their characteristics, which plays a bad role for developers in knowing these bad practices and avoiding using them during test code development. Therefore, we pick up those challenges and act by working on systematic methods to explore new test smell types from one of the most mainstream developers\u2019 Q&amp;A platforms, i.e., Stack Overflow. We further investigate the harmfulness of new test smells and analyze possible solutions for eliminating them. We find that some test smells make it hard for developers to fix failed test cases and trace their failing reasons. To exacerbate matters, we have identified two types of test smells that pose a risk to the accuracy of test cases. Next, we develop a detector to detect test smells from software. The detector is composed of six detection methods for different smell types. These detection methods are both wrapped with a set of syntactic rules based on the code patterns extracted from different test smells and developers\u2019 code styles. We manually construct a test smell dataset from seven popular Java projects and evaluate the effectiveness of our detector on it. The experimental results show that our detector achieves high performance in precision, recall, and F1 score. Then, we utilize our detector to detect smells from 919 real-world Java projects to explore whether the six test smells are prevalent in practice. We observe that these test smells are widely spread in 722 out of 919 Java projects, which demonstrates that they are prevalent in real-world projects. Finally, to validate the usefulness of test smells in practice, we submit 56 issue reports to 53 real-world projects with different smells. Our issue reports achieve 76.4% acceptance by conducting sentiment analysis on developers\u2019 replies. These evaluations confirm the effectiveness of our detector and the prevalence and practicality of new test smell types on real-world projects.\n          <\/jats:p>","DOI":"10.1145\/3631973","type":"journal-article","created":{"date-parts":[[2023,11,20]],"date-time":"2023-11-20T11:54:54Z","timestamp":1700481294000},"page":"1-32","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":14,"title":["The Lost World: Characterizing and Detecting Undiscovered Test Smells"],"prefix":"10.1145","volume":"33","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-6248-6734","authenticated-orcid":false,"given":"Yanming","family":"Yang","sequence":"first","affiliation":[{"name":"Department of Computer Science and Technology, Zhejiang University, Hangzhou, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0093-3292","authenticated-orcid":false,"given":"Xing","family":"Hu","sequence":"additional","affiliation":[{"name":"School of Software Technology, Zhejiang University, Ningbo, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6302-3256","authenticated-orcid":false,"given":"Xin","family":"Xia","sequence":"additional","affiliation":[{"name":"Software Engineering Application Technology Lab, Huawei, China"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4111-4189","authenticated-orcid":false,"given":"Xiaohu","family":"Yang","sequence":"additional","affiliation":[{"name":"Department of Computer Science and Technology, Zhejiang University, Hangzhou, China"}]}],"member":"320","published-online":{"date-parts":[[2024,3,15]]},"reference":[{"key":"e_1_3_2_2_2","unstructured":"https:\/\/github.com\/kestra-io\/kestra\/issues\/1257"},{"key":"e_1_3_2_3_2","unstructured":"https:\/\/github.com\/spring-projects\/spring-integration\/commit\/78fa2970fa9f7b64c6bf65db886f78b5dc1e4596"},{"key":"e_1_3_2_4_2","unstructured":"https:\/\/github.com\/Yanming-Yang\/TestSmellPackage"},{"key":"e_1_3_2_5_2","unstructured":"https:\/\/www.techtarget.com\/searchsoftwarequality\/definition\/test-case"},{"key":"e_1_3_2_6_2","unstructured":"https:\/\/stackoverflow.com\/questions\/7075938\/making-a-private-method-public-to-unit-test-it-good-idea"},{"key":"e_1_3_2_7_2","unstructured":"https:\/\/stackoverflow.com\/questions\/34571\/how-do-i-test-a-class-that-has-private-methods-fields-or-inner-classes\/34586#34586"},{"key":"e_1_3_2_8_2","unstructured":"https:\/\/www.codemotion.com\/magazine\/devops\/qa-testing\/how-to-challenge-your-code-with-property-based-testing-part-3"},{"key":"e_1_3_2_9_2","unstructured":"http:\/\/maven.apache.org\/guides\/introduction\/introduction-to-the-standard-directory-layout.html"},{"key":"e_1_3_2_10_2","unstructured":"https:\/\/stackoverflow.blog\/2022\/11\/03\/multiple-assertions-per-test-are-fine"},{"key":"e_1_3_2_11_2","unstructured":"https:\/\/stackoverflow.com\/questions\/1789834\/is-it-okay-to-run-for-loops-in-functional-test-methods"},{"key":"e_1_3_2_12_2","unstructured":"https:\/\/www.techtarget.com\/searchsoftwarequality\/definition\/test-case"},{"key":"e_1_3_2_13_2","unstructured":"https:\/\/stackoverflow.com\/questions\/28083624\/how-to-test-private-classes-in-junit-whitout-changing-accessible-to-true"},{"key":"e_1_3_2_14_2","unstructured":"https:\/\/stackoverflow.com\/questions\/28818735\/is-it-bad-practice-to-make-a-method-package-or-private-for-the-sake-of-testing"},{"key":"e_1_3_2_15_2","unstructured":"https:\/\/stackoverflow.com\/questions\/34571\/how-do-i-test-a-class-that-has-private-methods-fields-or-inner-classes"},{"key":"e_1_3_2_16_2","unstructured":"https:\/\/stackoverflow.com\/questions\/46207409\/unit-test-private-and-static-methods-in-java"},{"key":"e_1_3_2_17_2","unstructured":"https:\/\/stackoverflow.com\/questions\/2404978\/why-are-assertequals-parameters-in-the-order-expected-actual"},{"key":"e_1_3_2_18_2","unstructured":"https:\/\/stackoverflow.com\/questions\/16267660\/assert-assertequals-junit-parameters-order"},{"key":"e_1_3_2_19_2","unstructured":"https:\/\/github.com\/JSQLParser\/JSqlParser\/commit\/b0aae378864c6e197a58fc1fae2113c3a089f300"},{"key":"e_1_3_2_20_2","unstructured":"https:\/\/stackoverflow.com\/questions\/42633279\/are-test-data-factory-methods-dangerous-or-beneficial"},{"key":"e_1_3_2_21_2","unstructured":"https:\/\/stackoverflow.com\/questions\/18747811\/why-not-use-a-pseudo-random-number-generator-to-produce-test-data"},{"key":"e_1_3_2_22_2","unstructured":"https:\/\/stackoverflow.com\/questions\/16180485\/gae-separating-tests-from-app-code"},{"key":"e_1_3_2_23_2","unstructured":"https:\/\/stackoverflow.com\/questions\/42273490\/is-it-a-bad-practice-to-put-junit-test-method-into-the-tested-class"},{"key":"e_1_3_2_24_2","unstructured":"https:\/\/stackoverflow.com\/questions\/59292626\/how-to-execute-for-loop-for-all-test-cases-using-the-base-class-beforemethod-in"},{"key":"e_1_3_2_25_2","unstructured":"https:\/\/stackoverflow.com\/questions\/60654124\/junit-test-methods-cant-return-a-value"},{"key":"e_1_3_2_26_2","unstructured":"https:\/\/stackoverflow.com\/questions\/2811141\/is-it-bad-practice-to-use-reflection-in-unit-testing"},{"key":"e_1_3_2_27_2","unstructured":"https:\/\/stackoverflow.com\/questions\/19699122\/mock-private-method-in-the-same-class-that-is-being-tested"},{"key":"e_1_3_2_28_2","unstructured":"https:\/\/act-rules.github.io\/pages\/design\/test-cases\/"},{"key":"e_1_3_2_29_2","unstructured":"https:\/\/stackoverflow.com\/questions\/44606798\/how-to-iterate-the-different-user-ids-given-under-before-for-same-test-case-un"},{"key":"e_1_3_2_30_2","unstructured":"https:\/\/stackoverflow.com\/questions\/53597020\/best-practice-for-looped-junit-test"},{"key":"e_1_3_2_31_2","unstructured":"https:\/\/github.com\/orientechnologies\/orientdb\/blob\/6e94047200f6b7a15c02902eea21a26a85351fe6\/distributed\/src\/test\/java\/com\/orientechnologies\/orient\/server\/distributed\/ServerClusterRemoteDocumentIT.java"},{"key":"e_1_3_2_32_2","unstructured":"https:\/\/en.wikipedia.org\/wiki\/Test_fixture"},{"key":"e_1_3_2_33_2","unstructured":"https:\/\/www.boost.org\/doc\/libs\/1_60_0\/libs\/test\/doc\/html\/boost_test\/tests_organization\/fixtures\/case.html"},{"key":"e_1_3_2_34_2","unstructured":"https:\/\/github.com\/alibaba\/fastjson\/blob\/bcd0505019425b2b8a7146828bec51739b933318\/src\/test\/java\/com\/alibaba\/json\/test\/FNVHashTest.java#L15"},{"key":"e_1_3_2_35_2","unstructured":"https:\/\/github.com\/orientechnologies\/orientdb\/blob\/6e94047200f6b7a15c02902eea21a26a85351fe6\/core\/src\/test\/java\/com\/orientechnologies\/common\/collection\/closabledictionary\/OClosableLinkedContainerTest.java#L186"},{"key":"e_1_3_2_36_2","unstructured":"https:\/\/github.com\/cbeust\/testng\/issues\/2797"},{"key":"e_1_3_2_37_2","unstructured":"https:\/\/github.com\/AltBeacon\/android-beacon-library\/issues\/1101"},{"key":"e_1_3_2_38_2","unstructured":"https:\/\/github.com\/pippo-java\/pippo\/issues\/607"},{"key":"e_1_3_2_39_2","unstructured":"https:\/\/github.com\/docker-java\/docker-java\/issues\/1923"},{"key":"e_1_3_2_40_2","unstructured":"https:\/\/github.com\/alibaba\/fastjson\/issues\/4261#issuecomment-1295173220"},{"key":"e_1_3_2_41_2","unstructured":"https:\/\/github.com\/JSQLParser\/JSqlParser\/commit\/b0aae378864c6e197a58fc1fae2113c3a089f300"},{"key":"e_1_3_2_42_2","unstructured":"https:\/\/github.com\/JSQLParser\/JSqlParser\/issues\/1617"},{"key":"e_1_3_2_43_2","unstructured":"https:\/\/github.com\/hapifhir\/hapi-fhir\/issues\/3928#issuecomment-1217922279"},{"key":"e_1_3_2_44_2","unstructured":"https:\/\/github.com\/biojava\/biojava\/issues\/1038#issuecomment-1228993250"},{"key":"e_1_3_2_45_2","unstructured":"https:\/\/github.com\/javaparser\/javaparser\/pull\/3739"},{"key":"e_1_3_2_46_2","unstructured":"https:\/\/github.com\/eclipse\/californium\/issues\/2056"},{"key":"e_1_3_2_47_2","unstructured":"https:\/\/github.com\/AntennaPod\/AntennaPod\/issues\/6021#event-7204518302"},{"key":"e_1_3_2_48_2","unstructured":"https:\/\/github.com\/apache\/cordova-android\/issues\/1476"},{"key":"e_1_3_2_49_2","unstructured":"https:\/\/github.com\/eclipse-openj9\/openj9\/issues\/15708"},{"key":"e_1_3_2_50_2","unstructured":"https:\/\/github.com\/apache\/datasketches-java\/issues\/413#issuecomment-1218401059"},{"key":"e_1_3_2_51_2","unstructured":"https:\/\/github.com\/guoguibing\/librec\/issues\/350#issuecomment-1235063757"},{"key":"e_1_3_2_52_2","unstructured":"https:\/\/github.com\/stefan-zobel\/streamsupport\/issues\/20"},{"key":"e_1_3_2_53_2","unstructured":"https:\/\/github.com\/ReactiveX\/RxJava\/issues\/7467"},{"key":"e_1_3_2_54_2","unstructured":"https:\/\/github.com\/flowable\/flowable-engine\/issues\/3433#issuecomment-1216538228"},{"key":"e_1_3_2_55_2","unstructured":"[n. d.]. How To Write Effective Test Cases?https:\/\/www.softwaretestingclass.com\/how-to-write-good-test-cases\/"},{"key":"e_1_3_2_56_2","article-title":"Do the test smells assertion roulette and eager test impact students\u2019 troubleshooting and debugging capabilities?","author":"Aljedaani Wajdi","year":"2023","unstructured":"Wajdi Aljedaani, Mohamed Wiem Mkaouer, Anthony Peruma, and Stephanie Ludi. 2023. Do the test smells assertion roulette and eager test impact students\u2019 troubleshooting and debugging capabilities? arXiv preprint arXiv:2303.04234 (2023).","journal-title":"arXiv preprint arXiv:2303.04234"},{"key":"e_1_3_2_57_2","doi-asserted-by":"publisher","DOI":"10.1145\/3463274.3463335"},{"key":"e_1_3_2_58_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2012.6405253"},{"key":"e_1_3_2_59_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-014-9313-0"},{"key":"e_1_3_2_60_2","doi-asserted-by":"publisher","DOI":"10.1145\/2786805.2786823"},{"key":"e_1_3_2_61_2","doi-asserted-by":"publisher","DOI":"10.1145\/3338906.3338948"},{"key":"e_1_3_2_62_2","doi-asserted-by":"publisher","DOI":"10.1145\/3533767.3543290"},{"key":"e_1_3_2_63_2","volume-title":"WASDeTT-1: 1st International Workshop on Advanced Software Development Tools and Techniques","author":"Breugelmans Manuel","year":"2008","unstructured":"Manuel Breugelmans and Bart Van Rompaey. 2008. TestQ: Exploring structural and maintenance characteristics of unit test suites. In WASDeTT-1: 1st International Workshop on Advanced Software Development Tools and Techniques. Citeseer."},{"key":"e_1_3_2_64_2","article-title":"Developers perception on the severity of test smells: An empirical study","author":"Campos Denivan","year":"2021","unstructured":"Denivan Campos, Larissa Rocha, and Ivan Machado. 2021. Developers perception on the severity of test smells: An empirical study. arXiv preprint arXiv:2107.13902 (2021).","journal-title":"arXiv preprint arXiv:2107.13902"},{"key":"e_1_3_2_65_2","doi-asserted-by":"publisher","DOI":"10.1145\/3337932.3338815"},{"key":"e_1_3_2_66_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00062"},{"key":"e_1_3_2_67_2","doi-asserted-by":"publisher","DOI":"10.1145\/3555228.3555280"},{"key":"e_1_3_2_68_2","doi-asserted-by":"publisher","DOI":"10.1145\/3548659.3561306"},{"key":"e_1_3_2_69_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2018.00011"},{"key":"e_1_3_2_70_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2017.12.013"},{"key":"e_1_3_2_71_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2013.45"},{"key":"e_1_3_2_72_2","doi-asserted-by":"publisher","DOI":"10.1109\/MSR.2013.6624053"},{"key":"e_1_3_2_73_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jksuci.2021.10.008"},{"key":"e_1_3_2_74_2","volume-title":"Unit Test Frameworks: Tools for High-quality Software Development","author":"Hamill Paul","year":"2004","unstructured":"Paul Hamill. 2004. Unit Test Frameworks: Tools for High-quality Software Development. O\u2019Reilly Media, Inc."},{"key":"e_1_3_2_75_2","volume-title":"Unit Testing Principles, Practices, and Patterns","author":"Khorikov Vladimir","year":"2020","unstructured":"Vladimir Khorikov. 2020. Unit Testing Principles, Practices, and Patterns. Simon and Schuster."},{"key":"e_1_3_2_76_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-021-09969-1"},{"key":"e_1_3_2_77_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-15585-7_12"},{"key":"e_1_3_2_78_2","doi-asserted-by":"publisher","DOI":"10.1155\/2010\/932686"},{"key":"e_1_3_2_79_2","doi-asserted-by":"publisher","DOI":"10.1145\/3387904.3389296"},{"key":"e_1_3_2_80_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2006.10.018"},{"key":"e_1_3_2_81_2","doi-asserted-by":"publisher","DOI":"10.1109\/SANER56733.2023.00108"},{"key":"e_1_3_2_82_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-006-9002-8"},{"key":"e_1_3_2_83_2","doi-asserted-by":"publisher","DOI":"10.1145\/3377812.3382151"},{"key":"e_1_3_2_84_2","article-title":"Hearing the voice of experts: Unveiling Stack Exchange communities\u2019 knowledge of test smells","author":"Martins Luana","year":"2023","unstructured":"Luana Martins, Denivan Campos, Railana Santana, Joselito Mota Junior, Heitor Costa, and Ivan Machado. 2023. Hearing the voice of experts: Unveiling Stack Exchange communities\u2019 knowledge of test smells. arXiv preprint arXiv:2305.03431 (2023).","journal-title":"arXiv preprint arXiv:2305.03431"},{"key":"e_1_3_2_85_2","volume-title":"xUnit Test Patterns: Refactoring Test Code","author":"Meszaros Gerard","year":"2007","unstructured":"Gerard Meszaros. 2007. xUnit Test Patterns: Refactoring Test Code. Pearson Education."},{"key":"e_1_3_2_86_2","doi-asserted-by":"publisher","DOI":"10.1145\/3524842.3528529"},{"key":"e_1_3_2_87_2","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2009.5314231"},{"key":"e_1_3_2_88_2","first-page":"5","volume-title":"2016 IEEE\/ACM 9th International Workshop on Search-Based Software Testing (SBST)","author":"Palomba Fabio","year":"2016","unstructured":"Fabio Palomba, Dario Di Nucci, Annibale Panichella, Rocco Oliveto, and Andrea De Lucia. 2016. On the diffusion of test smells in automatically generated test code: An empirical study. In 2016 IEEE\/ACM 9th International Workshop on Search-Based Software Testing (SBST). IEEE, 5\u201314."},{"key":"e_1_3_2_89_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2018.00040"},{"key":"e_1_3_2_90_2","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-022-10207-5"},{"key":"e_1_3_2_91_2","doi-asserted-by":"publisher","DOI":"10.1145\/3476105"},{"key":"e_1_3_2_92_2","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3417921"},{"key":"e_1_3_2_93_2","unstructured":"Anthony Peruma Khalid Saeed Almalki Christian D. Newman Mohamed Wiem Mkaouer Ali Ouni and Fabio Palomba. 2019. On the distribution of test smells in open source Android applications: An exploratory study. (2019)."},{"key":"e_1_3_2_94_2","article-title":"Machine learning-based test smell detection","author":"Pontillo Valeria","year":"2022","unstructured":"Valeria Pontillo, Dario Amoroso d\u2019Aragona, Fabiano Pecorelli, Dario Di Nucci, Filomena Ferrucci, and Fabio Palomba. 2022. Machine learning-based test smell detection. arXiv preprint arXiv:2208.07574 (2022).","journal-title":"arXiv preprint arXiv:2208.07574"},{"key":"e_1_3_2_95_2","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2007.6.9.a12"},{"key":"e_1_3_2_96_2","article-title":"Smells in system user interactive tests","author":"Rwemalika Renaud","year":"2021","unstructured":"Renaud Rwemalika, Sarra Habchi, Mike Papadakis, Yves Le Traon, and Marie-Claude Brasseur. 2021. Smells in system user interactive tests. arXiv preprint arXiv:2111.02317 (2021).","journal-title":"arXiv preprint arXiv:2111.02317"},{"key":"e_1_3_2_97_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2022.3172654"},{"key":"e_1_3_2_98_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2018.00010"},{"key":"e_1_3_2_99_2","doi-asserted-by":"publisher","DOI":"10.7748\/nr2004.07.12.1.35.c5929"},{"key":"e_1_3_2_100_2","first-page":"92","volume-title":"Proceedings of the 2nd International Conference on Extreme Programming and Flexible Processes in Software Engineering (XP2001)","author":"Deursen Arie Van","year":"2001","unstructured":"Arie Van Deursen, Leon Moonen, Alex Van Den Bergh, and Gerard Kok. 2001. Refactoring test code. In Proceedings of the 2nd International Conference on Extreme Programming and Flexible Processes in Software Engineering (XP2001). Citeseer, 92\u201395."},{"key":"e_1_3_2_101_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2006.18"},{"key":"e_1_3_2_102_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2007.70745"},{"key":"e_1_3_2_103_2","doi-asserted-by":"publisher","DOI":"10.1145\/3422392.3422499"},{"key":"e_1_3_2_104_2","doi-asserted-by":"publisher","DOI":"10.5753\/jserd.2021.1893"},{"key":"e_1_3_2_105_2","doi-asserted-by":"publisher","DOI":"10.1145\/3350768.3350775"},{"key":"e_1_3_2_106_2","doi-asserted-by":"publisher","DOI":"10.1109\/SANER50967.2021.00033"},{"key":"e_1_3_2_107_2","doi-asserted-by":"publisher","DOI":"10.1109\/ASE51524.2021.9678615"},{"key":"e_1_3_2_108_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2019.00019"},{"issue":"3","key":"e_1_3_2_109_2","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3503509","article-title":"Predictive models in software engineering: Challenges and opportunities","volume":"31","author":"Yang Yanming","year":"2022","unstructured":"Yanming Yang, Xin Xia, David Lo, Tingting Bi, John Grundy, and Xiaohu Yang. 2022. Predictive models in software engineering: Challenges and opportunities. ACM Transactions on Software Engineering and Methodology (TOSEM) 31, 3 (2022), 1\u201372.","journal-title":"ACM Transactions on Software Engineering and Methodology (TOSEM)"},{"key":"e_1_3_2_110_2","article-title":"A survey on deep learning for software engineering","author":"Yang Yanming","year":"2020","unstructured":"Yanming Yang, Xin Xia, David Lo, and John Grundy. 2020. A survey on deep learning for software engineering. ACM Computing Surveys (CSUR) (2020).","journal-title":"ACM Computing Surveys (CSUR)"},{"key":"e_1_3_2_111_2","doi-asserted-by":"publisher","DOI":"10.1145\/2610384.2610404"}],"container-title":["ACM Transactions on Software Engineering and Methodology"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3631973","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3631973","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T22:51:02Z","timestamp":1750287062000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3631973"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,3,15]]},"references-count":110,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2024,3,31]]}},"alternative-id":["10.1145\/3631973"],"URL":"https:\/\/doi.org\/10.1145\/3631973","relation":{},"ISSN":["1049-331X","1557-7392"],"issn-type":[{"value":"1049-331X","type":"print"},{"value":"1557-7392","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,3,15]]},"assertion":[{"value":"2022-12-28","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2023-10-09","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2024-03-15","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}