{"id":"https://openalex.org/W4384155572","doi":"https://doi.org/10.1145/3597926.3598055","title":"June: A Type Testability Transformation for Improved ATG Performance","display_name":"June: A Type Testability Transformation for Improved ATG Performance","publication_year":2023,"publication_date":"2023-07-12","ids":{"openalex":"https://openalex.org/W4384155572","doi":"https://doi.org/10.1145/3597926.3598055"},"language":"en","primary_location":{"id":"doi:10.1145/3597926.3598055","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3597926.3598055","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://discovery.ucl.ac.uk/10175616/1/june.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5087610906","display_name":"Dan Bruce","orcid":null},"institutions":[{"id":"https://openalex.org/I4210108625","display_name":"Microsoft (United Kingdom)","ror":"https://ror.org/01rw27z95","country_code":"GB","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210108625"]},{"id":"https://openalex.org/I45129253","display_name":"University College London","ror":"https://ror.org/02jx3x895","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I45129253"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Dan Bruce","raw_affiliation_strings":["Microsoft, UK / University College London, UK"],"affiliations":[{"raw_affiliation_string":"Microsoft, UK / University College London, UK","institution_ids":["https://openalex.org/I45129253","https://openalex.org/I4210108625"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5089601715","display_name":"David Kelly","orcid":"https://orcid.org/0000-0002-5880-4162"},"institutions":[{"id":"https://openalex.org/I183935753","display_name":"King's College London","ror":"https://ror.org/0220mzb33","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I183935753"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"David Kelly","raw_affiliation_strings":["King\u2019s College London, UK","King's College London, UK"],"affiliations":[{"raw_affiliation_string":"King\u2019s College London, UK","institution_ids":["https://openalex.org/I183935753"]},{"raw_affiliation_string":"King's College London, UK","institution_ids":["https://openalex.org/I183935753"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5037098621","display_name":"H\u00e9ctor D. Men\u00e9ndez","orcid":"https://orcid.org/0000-0002-6314-3725"},"institutions":[{"id":"https://openalex.org/I183935753","display_name":"King's College London","ror":"https://ror.org/0220mzb33","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I183935753"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Hector Menendez","raw_affiliation_strings":["King\u2019s College London, UK","King's College London, UK"],"affiliations":[{"raw_affiliation_string":"King\u2019s College London, UK","institution_ids":["https://openalex.org/I183935753"]},{"raw_affiliation_string":"King's College London, UK","institution_ids":["https://openalex.org/I183935753"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5076587279","display_name":"Earl T. Barr","orcid":"https://orcid.org/0000-0003-0771-7891"},"institutions":[{"id":"https://openalex.org/I45129253","display_name":"University College London","ror":"https://ror.org/02jx3x895","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I45129253"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Earl T. Barr","raw_affiliation_strings":["University College London, UK"],"affiliations":[{"raw_affiliation_string":"University College London, UK","institution_ids":["https://openalex.org/I45129253"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5013673413","display_name":"David Clark","orcid":"https://orcid.org/0000-0002-7004-934X"},"institutions":[{"id":"https://openalex.org/I45129253","display_name":"University College London","ror":"https://ror.org/02jx3x895","country_code":"GB","type":"education","lineage":["https://openalex.org/I124357947","https://openalex.org/I45129253"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"David Clark","raw_affiliation_strings":["University College London, UK"],"affiliations":[{"raw_affiliation_string":"University College London, UK","institution_ids":["https://openalex.org/I45129253"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5087610906"],"corresponding_institution_ids":["https://openalex.org/I4210108625","https://openalex.org/I45129253"],"apc_list":null,"apc_paid":null,"fwci":0.2139,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":{"value":0.57791143,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"274","last_page":"284"},"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.9975000023841858,"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.9965999722480774,"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.7669433355331421},{"id":"https://openalex.org/keywords/testability","display_name":"Testability","score":0.6511574983596802},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6122145652770996},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.5997717976570129},{"id":"https://openalex.org/keywords/string","display_name":"String (physics)","score":0.5969640016555786},{"id":"https://openalex.org/keywords/code-coverage","display_name":"Code coverage","score":0.4843798577785492},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.4749065637588501},{"id":"https://openalex.org/keywords/string-searching-algorithm","display_name":"String searching algorithm","score":0.46698659658432007},{"id":"https://openalex.org/keywords/substring","display_name":"Substring","score":0.46102485060691833},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4221421480178833},{"id":"https://openalex.org/keywords/string-metric","display_name":"String metric","score":0.41939157247543335},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.41882503032684326},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.41711705923080444},{"id":"https://openalex.org/keywords/unit-testing","display_name":"Unit testing","score":0.41707393527030945},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3292493522167206},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.2828558087348938},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.22419291734695435},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.17963141202926636},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.1782170832157135},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.09999632835388184}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7669433355331421},{"id":"https://openalex.org/C51234621","wikidata":"https://www.wikidata.org/wiki/Q2149495","display_name":"Testability","level":2,"score":0.6511574983596802},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6122145652770996},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.5997717976570129},{"id":"https://openalex.org/C157486923","wikidata":"https://www.wikidata.org/wiki/Q1376436","display_name":"String (physics)","level":2,"score":0.5969640016555786},{"id":"https://openalex.org/C53942775","wikidata":"https://www.wikidata.org/wiki/Q1211721","display_name":"Code coverage","level":3,"score":0.4843798577785492},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.4749065637588501},{"id":"https://openalex.org/C7757238","wikidata":"https://www.wikidata.org/wiki/Q374040","display_name":"String searching algorithm","level":3,"score":0.46698659658432007},{"id":"https://openalex.org/C182407805","wikidata":"https://www.wikidata.org/wiki/Q2626534","display_name":"Substring","level":3,"score":0.46102485060691833},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4221421480178833},{"id":"https://openalex.org/C22820288","wikidata":"https://www.wikidata.org/wiki/Q9050568","display_name":"String metric","level":4,"score":0.41939157247543335},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.41882503032684326},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.41711705923080444},{"id":"https://openalex.org/C148027188","wikidata":"https://www.wikidata.org/wiki/Q907375","display_name":"Unit testing","level":3,"score":0.41707393527030945},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3292493522167206},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.2828558087348938},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.22419291734695435},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.17963141202926636},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.1782170832157135},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.09999632835388184},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0},{"id":"https://openalex.org/C37914503","wikidata":"https://www.wikidata.org/wiki/Q156495","display_name":"Mathematical physics","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/3597926.3598055","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3597926.3598055","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis","raw_type":"proceedings-article"},{"id":"pmh:oai:eprints.ucl.ac.uk.OAI2:10175616","is_oa":true,"landing_page_url":"https://discovery.ucl.ac.uk/id/eprint/10175616/","pdf_url":"https://discovery.ucl.ac.uk/10175616/1/june.pdf","source":{"id":"https://openalex.org/S4306400024","display_name":"UCL Discovery (University College London)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I45129253","host_organization_name":"University College London","host_organization_lineage":["https://openalex.org/I45129253"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"     In:  ISSTA 2023: Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis.  (pp. pp. 274-284).  ACM (2023)     ","raw_type":"Proceedings paper"},{"id":"pmh:oai:kclpure.kcl.ac.uk:publications/dd801743-d802-424a-850e-78dfddeb106a","is_oa":true,"landing_page_url":"https://kclpure.kcl.ac.uk/portal/en/publications/dd801743-d802-424a-850e-78dfddeb106a","pdf_url":"https://kclpure.kcl.ac.uk/ws/files/223654727/june.pdf","source":{"id":"https://openalex.org/S4306400216","display_name":"Research Portal (King's College London)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I183935753","host_organization_name":"King's College London","host_organization_lineage":["https://openalex.org/I183935753"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nd","license_id":"https://openalex.org/licenses/cc-by-nd","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Bruce, D, Kelly, D, Menendez, H D, Clark, D & Barr, E 2023, June: A Type Testability Transformation for Improved ATG Performance. in The ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA).","raw_type":"contributionToPeriodical"},{"id":"pmh:oai:pure.atira.dk:publications/dd801743-d802-424a-850e-78dfddeb106a","is_oa":false,"landing_page_url":"https://kclpure.kcl.ac.uk/en/publications/dd801743-d802-424a-850e-78dfddeb106a","pdf_url":null,"source":{"id":"https://openalex.org/S4306400216","display_name":"Research Portal (King's College London)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I183935753","host_organization_name":"King's College London","host_organization_lineage":["https://openalex.org/I183935753"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":""}],"best_oa_location":{"id":"pmh:oai:eprints.ucl.ac.uk.OAI2:10175616","is_oa":true,"landing_page_url":"https://discovery.ucl.ac.uk/id/eprint/10175616/","pdf_url":"https://discovery.ucl.ac.uk/10175616/1/june.pdf","source":{"id":"https://openalex.org/S4306400024","display_name":"UCL Discovery (University College London)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I45129253","host_organization_name":"University College London","host_organization_lineage":["https://openalex.org/I45129253"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"     In:  ISSTA 2023: Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis.  (pp. pp. 274-284).  ACM (2023)     ","raw_type":"Proceedings paper"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G301723715","display_name":null,"funder_award_id":"EP/V00784X/1","funder_id":"https://openalex.org/F4320314731","funder_display_name":"UK Research and Innovation"},{"id":"https://openalex.org/G4223508424","display_name":null,"funder_award_id":"EP/V026801/2","funder_id":"https://openalex.org/F4320314731","funder_display_name":"UK Research and Innovation"},{"id":"https://openalex.org/G4336396751","display_name":null,"funder_award_id":"EP/V026801","funder_id":"https://openalex.org/F4320314731","funder_display_name":"UK Research and Innovation"}],"funders":[{"id":"https://openalex.org/F4320314731","display_name":"UK Research and Innovation","ror":"https://ror.org/001aqnf71"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4384155572.pdf","grobid_xml":"https://content.openalex.org/works/W4384155572.grobid-xml"},"referenced_works_count":39,"referenced_works":["https://openalex.org/W1962482270","https://openalex.org/W1965035857","https://openalex.org/W1971650562","https://openalex.org/W1975581743","https://openalex.org/W1979992865","https://openalex.org/W1993760289","https://openalex.org/W2006599089","https://openalex.org/W2032947860","https://openalex.org/W2080696000","https://openalex.org/W2098054810","https://openalex.org/W2101629181","https://openalex.org/W2107709519","https://openalex.org/W2138428785","https://openalex.org/W2147002252","https://openalex.org/W2293616642","https://openalex.org/W2460699391","https://openalex.org/W2499791918","https://openalex.org/W2514578992","https://openalex.org/W2620641089","https://openalex.org/W2762387874","https://openalex.org/W2766540688","https://openalex.org/W2768049211","https://openalex.org/W2899462170","https://openalex.org/W2899469232","https://openalex.org/W2917685682","https://openalex.org/W2952510797","https://openalex.org/W2954398623","https://openalex.org/W2955968478","https://openalex.org/W2961870034","https://openalex.org/W2963350015","https://openalex.org/W2980167976","https://openalex.org/W3028485321","https://openalex.org/W3093525048","https://openalex.org/W3102086861","https://openalex.org/W3180202404","https://openalex.org/W3216441415","https://openalex.org/W4237492309","https://openalex.org/W4251988601","https://openalex.org/W6833780757"],"related_works":["https://openalex.org/W2298204719","https://openalex.org/W52396946","https://openalex.org/W2549495077","https://openalex.org/W2748704845","https://openalex.org/W1564013439","https://openalex.org/W2119057313","https://openalex.org/W3112977702","https://openalex.org/W2395807140","https://openalex.org/W2902482624","https://openalex.org/W3175353343"],"abstract_inverted_index":{"Strings":[0],"are":[1,5,18,89,175],"universal":[2],"containers:":[3],"they":[4],"flexible":[6],"to":[7,14,59,66,119,165,186],"use,":[8],"abundant":[9],"in":[10,99,206,214],"code,":[11],"and":[12,76,92,109,152,193],"difficult":[13],"test.":[15],"String-controlled":[16],"programs":[17,19,35],"that":[20,55,112,178,244],"make":[21],"branching":[22],"decisions":[23],"based":[24],"on":[25,121,203,209,217],"string":[26,64,83,162],"input.":[27],"Automatically":[28],"generating":[29],"valid":[30],"test":[31,67,101,116],"inputs":[32],"for":[33,95,197],"these":[34],"considering":[36],"only":[37],"character":[38],"sequences":[39],"rather":[40],"than":[41],"any":[42,61],"underlying":[43],"string-encoded":[44],"structures,":[45],"can":[46,248],"be":[47,181],"prohibitively":[48],"expensive.":[49],"We":[50,242],"present":[51,62],"June,":[52],"a":[53,128,157,230,254,258],"tool":[54],"enables":[56],"Java":[57,149,158],"developers":[58],"expose":[60],"latent":[63],"structure":[65,163],"generation":[68],"tools.":[69],"June":[70,103,132,146,169,256],"is":[71],"an":[72,77,114,138,166],"annotation-driven":[73],"testability":[74],"transformation":[75],"extensible":[78],"library,":[79],"JuneLib,":[80],"of":[81,124,140,235],"structured":[82,97,129],"definitions.":[84],"The":[85],"core":[86],"JuneLib":[87],"definitions":[88],"empirically":[90],"derived":[91],"provide":[93],"templates":[94],"all":[96],"strings":[98],"our":[100,227],"set.":[102],"takes":[104],"lightly":[105],"annotated":[106],"source":[107],"code":[108,111],"injects":[110],"permits":[113],"automated":[115],"generator":[117],"(ATG)":[118],"focus":[120],"the":[122,134,200,218,250],"creation":[123],"mutable":[125],"substrings":[126],"inside":[127],"string.":[130],"Using":[131],"costs":[133],"developer":[135],"little,":[136],"with":[137],"average":[139],"2.1":[141],"annotations":[142],"per":[143],"string-controlled":[144],"class.":[145,220],"uses":[147],"standard":[148],"build":[150],"tools":[151,247],"therefore":[153],"deploys":[154],"seamlessly":[155],"within":[156],"project.":[159],"By":[160],"feeding":[161],"information":[164],"ATG":[167,246],"tool,":[168],"dramatically":[170],"reduces":[171],"wasted":[172],"effort;":[173],"branches":[174],"effortlessly":[176],"covered":[177],"would":[179],"otherwise":[180],"extremely":[182],"difficult,":[183],"or":[184],"impossible,":[185],"cover.":[187],"This":[188],"waste":[189],"reduction":[190],"both":[191],"increases":[192],"speeds":[194],"coverage.":[195],"EvoSuite,":[196],"example,":[198],"achieves":[199],"same":[201,251],"coverage":[202],"June-ed":[204,252],"classes":[205],"1":[207],"minute,":[208],"average,":[210],"as":[211],"it":[212],"does":[213],"9":[215],"minutes":[216],"un-June-ed":[219],"These":[221],"gains":[222],"increase":[223],"over":[224],"time.":[225],"On":[226],"corpus,":[228],"June-ing":[229],"program":[231],"compresses":[232],"24":[233],"hours":[234],"execution":[236],"time":[237],"into":[238],"ca.":[239],"2":[240],"hours.":[241],"show":[243],"many":[245,262],"reuse":[249],"code:":[253],"few":[255],"annotations,":[257],"one-off":[259],"cost,":[260],"benefit":[261],"different":[263],"testing":[264],"regimes.":[265]},"counts_by_year":[{"year":2026,"cited_by_count":1}],"updated_date":"2026-04-16T15:07:20.185449","created_date":"2025-10-10T00:00:00"}
