{"id":"https://openalex.org/W1975474596","doi":"https://doi.org/10.1145/2544135","title":"Generating Test Cases for Programs that Are Coded against Interfaces and Annotations","display_name":"Generating Test Cases for Programs that Are Coded against Interfaces and Annotations","publication_year":2014,"publication_date":"2014-05-01","ids":{"openalex":"https://openalex.org/W1975474596","doi":"https://doi.org/10.1145/2544135","mag":"1975474596"},"language":"en","primary_location":{"id":"doi:10.1145/2544135","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2544135","pdf_url":null,"source":{"id":"https://openalex.org/S142627899","display_name":"ACM Transactions on Software Engineering and Methodology","issn_l":"1049-331X","issn":["1049-331X","1557-7392"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Software Engineering and Methodology","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5057313435","display_name":"Mainul Islam","orcid":null},"institutions":[{"id":"https://openalex.org/I189196454","display_name":"The University of Texas at Arlington","ror":"https://ror.org/019kgqr73","country_code":"US","type":"education","lineage":["https://openalex.org/I189196454"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Mainul Islam","raw_affiliation_strings":["University of Texas at Arlington"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Texas at Arlington","institution_ids":["https://openalex.org/I189196454"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5079825775","display_name":"Christoph Csallner","orcid":"https://orcid.org/0000-0003-0896-6902"},"institutions":[{"id":"https://openalex.org/I189196454","display_name":"The University of Texas at Arlington","ror":"https://ror.org/019kgqr73","country_code":"US","type":"education","lineage":["https://openalex.org/I189196454"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Christoph Csallner","raw_affiliation_strings":["University of Texas at Arlington"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Texas at Arlington","institution_ids":["https://openalex.org/I189196454"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I189196454"],"apc_list":null,"apc_paid":null,"fwci":2.6003,"has_fulltext":false,"cited_by_count":10,"citation_normalized_percentile":{"value":0.89032709,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"23","issue":"3","first_page":"1","last_page":"38"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9990000128746033,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8739840984344482},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6705297231674194},{"id":"https://openalex.org/keywords/unreachable-code","display_name":"Unreachable code","score":0.6135448217391968},{"id":"https://openalex.org/keywords/dead-code","display_name":"Dead code","score":0.589450478553772},{"id":"https://openalex.org/keywords/test-case","display_name":"Test case","score":0.5321884155273438},{"id":"https://openalex.org/keywords/code-coverage","display_name":"Code coverage","score":0.5314623117446899},{"id":"https://openalex.org/keywords/redundant-code","display_name":"Redundant code","score":0.5261023640632629},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.48975324630737305},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.48510658740997314},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.46630847454071045},{"id":"https://openalex.org/keywords/cover","display_name":"Cover (algebra)","score":0.4441336393356323},{"id":"https://openalex.org/keywords/reflection","display_name":"Reflection (computer programming)","score":0.42240411043167114},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.33814138174057007},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.29023200273513794},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.22534221410751343},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.17581996321678162}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8739840984344482},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6705297231674194},{"id":"https://openalex.org/C50951305","wikidata":"https://www.wikidata.org/wiki/Q2482534","display_name":"Unreachable code","level":5,"score":0.6135448217391968},{"id":"https://openalex.org/C47434764","wikidata":"https://www.wikidata.org/wiki/Q1770035","display_name":"Dead code","level":5,"score":0.589450478553772},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.5321884155273438},{"id":"https://openalex.org/C53942775","wikidata":"https://www.wikidata.org/wiki/Q1211721","display_name":"Code coverage","level":3,"score":0.5314623117446899},{"id":"https://openalex.org/C151578736","wikidata":"https://www.wikidata.org/wiki/Q1251793","display_name":"Redundant code","level":4,"score":0.5261023640632629},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.48975324630737305},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.48510658740997314},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.46630847454071045},{"id":"https://openalex.org/C2780428219","wikidata":"https://www.wikidata.org/wiki/Q16952335","display_name":"Cover (algebra)","level":2,"score":0.4441336393356323},{"id":"https://openalex.org/C65682993","wikidata":"https://www.wikidata.org/wiki/Q1056451","display_name":"Reflection (computer programming)","level":2,"score":0.42240411043167114},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.33814138174057007},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.29023200273513794},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.22534221410751343},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.17581996321678162},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0},{"id":"https://openalex.org/C152877465","wikidata":"https://www.wikidata.org/wiki/Q208042","display_name":"Regression analysis","level":2,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C119857082","wikidata":"https://www.wikidata.org/wiki/Q2539","display_name":"Machine learning","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2544135","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2544135","pdf_url":null,"source":{"id":"https://openalex.org/S142627899","display_name":"ACM Transactions on Software Engineering and Methodology","issn_l":"1049-331X","issn":["1049-331X","1557-7392"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Software Engineering and Methodology","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G3880556372","display_name":null,"funder_award_id":"1017305 and 1117369","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":72,"referenced_works":["https://openalex.org/W647008","https://openalex.org/W157156687","https://openalex.org/W175551733","https://openalex.org/W194677851","https://openalex.org/W1480909796","https://openalex.org/W1510379383","https://openalex.org/W1518151261","https://openalex.org/W1524053243","https://openalex.org/W1526560593","https://openalex.org/W1540492331","https://openalex.org/W1541128807","https://openalex.org/W1577562415","https://openalex.org/W1608825581","https://openalex.org/W1644882639","https://openalex.org/W1655015421","https://openalex.org/W1689913591","https://openalex.org/W1710734607","https://openalex.org/W1910771831","https://openalex.org/W1952428424","https://openalex.org/W1959256509","https://openalex.org/W1971137495","https://openalex.org/W1976721277","https://openalex.org/W1993836075","https://openalex.org/W2000651459","https://openalex.org/W2003543371","https://openalex.org/W2008626182","https://openalex.org/W2019340605","https://openalex.org/W2023730632","https://openalex.org/W2024442685","https://openalex.org/W2029414465","https://openalex.org/W2041378382","https://openalex.org/W2046699259","https://openalex.org/W2047103478","https://openalex.org/W2054309922","https://openalex.org/W2077118916","https://openalex.org/W2079285359","https://openalex.org/W2096449544","https://openalex.org/W2097347654","https://openalex.org/W2100122438","https://openalex.org/W2101512909","https://openalex.org/W2107294940","https://openalex.org/W2107709519","https://openalex.org/W2109276114","https://openalex.org/W2110311336","https://openalex.org/W2114337691","https://openalex.org/W2114345296","https://openalex.org/W2127938826","https://openalex.org/W2132897303","https://openalex.org/W2133251877","https://openalex.org/W2133612077","https://openalex.org/W2136836627","https://openalex.org/W2137726309","https://openalex.org/W2143238865","https://openalex.org/W2144123593","https://openalex.org/W2146641295","https://openalex.org/W2151519920","https://openalex.org/W2157499124","https://openalex.org/W2159765281","https://openalex.org/W2160875393","https://openalex.org/W2162120832","https://openalex.org/W2167363133","https://openalex.org/W2167723122","https://openalex.org/W2168909041","https://openalex.org/W2172260321","https://openalex.org/W2624972722","https://openalex.org/W3101964726","https://openalex.org/W4237492309","https://openalex.org/W4246385123","https://openalex.org/W4253606798","https://openalex.org/W4254691308","https://openalex.org/W4285719527","https://openalex.org/W6637322797"],"related_works":["https://openalex.org/W116913286","https://openalex.org/W632311702","https://openalex.org/W2123574549","https://openalex.org/W1141223778","https://openalex.org/W1777501891","https://openalex.org/W2084499270","https://openalex.org/W2160620982","https://openalex.org/W4253804737","https://openalex.org/W2369241479","https://openalex.org/W4313563760"],"abstract_inverted_index":{"Automatic":[0],"test":[1,20,55,65,76,98,142],"case":[2,21,56,66],"generation":[3,22],"for":[4,96],"software":[5],"programs":[6],"is":[7],"very":[8],"powerful":[9],"but":[10],"suffers":[11],"from":[12],"a":[13,93,127],"key":[14],"limitation.":[15],"That":[16],"is,":[17],"most":[18],"current":[19,64],"techniques":[23],"fail":[24],"to":[25,141,172],"cover":[26,84,173],"testee":[27],"code":[28,32,37,74,86,163,175],"when":[29],"covering":[30],"that":[31],"requires":[33],"additional":[34],"pieces":[35],"of":[36,41,49,106,152],"not":[38],"yet":[39],"part":[40],"the":[42,52,73,150,174,184,192],"program":[43,117],"under":[44,75],"test.":[45],"To":[46,83],"address":[47],"some":[48],"these":[50],"cases,":[51],"Pex":[53],"state-of-the-art":[54],"generator":[57],"can":[58],"generate":[59],"basic":[60],"mock":[61,101,146,166],"code.":[62],"However,":[63],"generators":[67],"cannot":[68],"handle":[69],"cases":[70,99,143],"in":[71,87,126],"which":[72],"uses":[77],"multiple":[78],"interfaces,":[79,110],"annotations,":[80,111],"or":[81],"reflection.":[82],"such":[85,161,181],"an":[88,133],"object-oriented":[89],"setting,":[90],"we":[91],"describe":[92],"novel":[94],"technique":[95,104,154],"generating":[97],"and":[100,112,137,144,176,189],"classes.":[102,147],"The":[103],"consists":[105],"collecting":[107],"constraints":[108,118],"on":[109,155],"reflection,":[113],"combining":[114],"them":[115,125,131],"with":[116,132,164,186],"collected":[119],"during":[120],"dynamic":[121],"symbolic":[122],"execution,":[123],"encoding":[124],"constraint":[128,135,139],"system,":[129],"solving":[130],"off-the-shelf":[134],"solver,":[136],"mapping":[138],"solutions":[140],"custom":[145],"We":[148],"demonstrate":[149],"value":[151],"this":[153],"open-source":[156],"applications.":[157],"Our":[158],"approach":[159],"covered":[160],"third-party":[162],"generated":[165],"classes,":[167],"while":[168],"competing":[169],"approaches":[170],"failed":[171],"sometimes":[177],"produced":[178],"unintended":[179],"side-effects":[180],"as":[182],"filling":[183],"screen":[185],"dialog":[187],"boxes":[188],"writing":[190],"into":[191],"file":[193],"system.":[194]},"counts_by_year":[{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":2},{"year":2014,"cited_by_count":1}],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
