{"id":"https://openalex.org/W3005628256","doi":"https://doi.org/10.1145/3377811.3380429","title":"On learning meaningful assert statements for unit test cases","display_name":"On learning meaningful assert statements for unit test cases","publication_year":2020,"publication_date":"2020-06-27","ids":{"openalex":"https://openalex.org/W3005628256","doi":"https://doi.org/10.1145/3377811.3380429","mag":"3005628256"},"language":"en","primary_location":{"id":"doi:10.1145/3377811.3380429","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3377811.3380429","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering","raw_type":"proceedings-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/2002.05800","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Cody Watson","orcid":null},"institutions":[{"id":"https://openalex.org/I184889055","display_name":"Washington and Lee University","ror":"https://ror.org/05r9xgf14","country_code":"US","type":"education","lineage":["https://openalex.org/I184889055"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Cody Watson","raw_affiliation_strings":["Washington and Lee University"],"affiliations":[{"raw_affiliation_string":"Washington and Lee University","institution_ids":["https://openalex.org/I184889055"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Michele Tufano","orcid":null},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Michele Tufano","raw_affiliation_strings":["Microsoft, Redmond, Washington"],"affiliations":[{"raw_affiliation_string":"Microsoft, Redmond, Washington","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Kevin Moran","orcid":null},"institutions":[{"id":"https://openalex.org/I16285277","display_name":"William & Mary","ror":"https://ror.org/03hsf0573","country_code":"US","type":"education","lineage":["https://openalex.org/I16285277"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Kevin Moran","raw_affiliation_strings":["William &amp; Mary"],"affiliations":[{"raw_affiliation_string":"William &amp; Mary","institution_ids":["https://openalex.org/I16285277"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Gabriele Bavota","orcid":null},"institutions":[{"id":"https://openalex.org/I57201433","display_name":"Universit\u00e0 della Svizzera italiana","ror":"https://ror.org/03c4atk17","country_code":"CH","type":"education","lineage":["https://openalex.org/I57201433"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Gabriele Bavota","raw_affiliation_strings":["Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland"],"affiliations":[{"raw_affiliation_string":"Universit\u00e0 della Svizzera italiana (USI), Lugano, Switzerland","institution_ids":["https://openalex.org/I57201433"]}]},{"author_position":"last","author":{"id":null,"display_name":"Denys Poshyvanyk","orcid":null},"institutions":[{"id":"https://openalex.org/I16285277","display_name":"William & Mary","ror":"https://ror.org/03hsf0573","country_code":"US","type":"education","lineage":["https://openalex.org/I16285277"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Denys Poshyvanyk","raw_affiliation_strings":["William &amp; Mary"],"affiliations":[{"raw_affiliation_string":"William &amp; Mary","institution_ids":["https://openalex.org/I16285277"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":5,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I184889055"],"apc_list":null,"apc_paid":null,"fwci":11.4029,"has_fulltext":false,"cited_by_count":96,"citation_normalized_percentile":{"value":0.98422528,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"1398","last_page":"1409"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"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"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998999834060669,"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/T12423","display_name":"Software Reliability and Analysis Research","score":0.998199999332428,"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/correctness","display_name":"Correctness","score":0.6175000071525574},{"id":"https://openalex.org/keywords/statement","display_name":"Statement (logic)","score":0.5121999979019165},{"id":"https://openalex.org/keywords/unit-testing","display_name":"Unit testing","score":0.49779999256134033},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.48179998993873596},{"id":"https://openalex.org/keywords/test","display_name":"Test (biology)","score":0.4729999899864197},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.41830000281333923},{"id":"https://openalex.org/keywords/complement","display_name":"Complement (music)","score":0.41100001335144043},{"id":"https://openalex.org/keywords/test-case","display_name":"Test case","score":0.3833000063896179},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.3797999918460846},{"id":"https://openalex.org/keywords/test-management-approach","display_name":"Test Management Approach","score":0.37540000677108765}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7440999746322632},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.6175000071525574},{"id":"https://openalex.org/C2777026412","wikidata":"https://www.wikidata.org/wiki/Q2684591","display_name":"Statement (logic)","level":2,"score":0.5121999979019165},{"id":"https://openalex.org/C148027188","wikidata":"https://www.wikidata.org/wiki/Q907375","display_name":"Unit testing","level":3,"score":0.49779999256134033},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.48179998993873596},{"id":"https://openalex.org/C2777267654","wikidata":"https://www.wikidata.org/wiki/Q3519023","display_name":"Test (biology)","level":2,"score":0.4729999899864197},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.47200000286102295},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.41830000281333923},{"id":"https://openalex.org/C112313634","wikidata":"https://www.wikidata.org/wiki/Q7886648","display_name":"Complement (music)","level":5,"score":0.41100001335144043},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.4097000062465668},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.3833000063896179},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.3797999918460846},{"id":"https://openalex.org/C7435765","wikidata":"https://www.wikidata.org/wiki/Q7705776","display_name":"Test Management Approach","level":5,"score":0.37540000677108765},{"id":"https://openalex.org/C161821725","wikidata":"https://www.wikidata.org/wiki/Q917415","display_name":"Regression testing","level":5,"score":0.3741999864578247},{"id":"https://openalex.org/C4478048","wikidata":"https://www.wikidata.org/wiki/Q950250","display_name":"Test-driven development","level":4,"score":0.3702000081539154},{"id":"https://openalex.org/C169168650","wikidata":"https://www.wikidata.org/wiki/Q1675637","display_name":"Keyword-driven testing","level":5,"score":0.35989999771118164},{"id":"https://openalex.org/C119857082","wikidata":"https://www.wikidata.org/wiki/Q2539","display_name":"Machine learning","level":1,"score":0.35339999198913574},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.352400004863739},{"id":"https://openalex.org/C9652623","wikidata":"https://www.wikidata.org/wiki/Q190109","display_name":"Field (mathematics)","level":2,"score":0.3513000011444092},{"id":"https://openalex.org/C53942775","wikidata":"https://www.wikidata.org/wiki/Q1211721","display_name":"Code coverage","level":3,"score":0.34290000796318054},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.33899998664855957},{"id":"https://openalex.org/C2776673561","wikidata":"https://www.wikidata.org/wiki/Q655357","display_name":"Atlas (anatomy)","level":2,"score":0.3375999927520752},{"id":"https://openalex.org/C117447612","wikidata":"https://www.wikidata.org/wiki/Q1412670","display_name":"Software quality","level":4,"score":0.3312999904155731},{"id":"https://openalex.org/C182122060","wikidata":"https://www.wikidata.org/wiki/Q6752328","display_name":"Manual testing","level":5,"score":0.31470000743865967},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3003000020980835},{"id":"https://openalex.org/C56666940","wikidata":"https://www.wikidata.org/wiki/Q788790","display_name":"Documentation","level":2,"score":0.2915000021457672},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.2892000079154968},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.2750999927520752},{"id":"https://openalex.org/C16910744","wikidata":"https://www.wikidata.org/wiki/Q7705759","display_name":"Test data","level":2,"score":0.2736000120639801},{"id":"https://openalex.org/C162443782","wikidata":"https://www.wikidata.org/wiki/Q1066228","display_name":"White-box testing","level":5,"score":0.26899999380111694},{"id":"https://openalex.org/C109852812","wikidata":"https://www.wikidata.org/wiki/Q2406355","display_name":"Test harness","level":5,"score":0.26330000162124634},{"id":"https://openalex.org/C108913964","wikidata":"https://www.wikidata.org/wiki/Q2376856","display_name":"System under test","level":4,"score":0.26179999113082886},{"id":"https://openalex.org/C10272871","wikidata":"https://www.wikidata.org/wiki/Q929972","display_name":"Software inspection","level":5,"score":0.2529999911785126},{"id":"https://openalex.org/C204321447","wikidata":"https://www.wikidata.org/wiki/Q30642","display_name":"Natural language processing","level":1,"score":0.25220000743865967}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3377811.3380429","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3377811.3380429","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:2002.05800","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2002.05800","pdf_url":"https://arxiv.org/pdf/2002.05800","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:2002.05800","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2002.05800","pdf_url":"https://arxiv.org/pdf/2002.05800","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W1524214963","https://openalex.org/W1962482270","https://openalex.org/W1965194038","https://openalex.org/W1971650562","https://openalex.org/W1972141422","https://openalex.org/W1988757916","https://openalex.org/W2009797711","https://openalex.org/W2077273779","https://openalex.org/W2090878800","https://openalex.org/W2142537222","https://openalex.org/W2143861926","https://openalex.org/W2242083635","https://openalex.org/W2402619042","https://openalex.org/W2561301563","https://openalex.org/W2682664750","https://openalex.org/W2740220421","https://openalex.org/W2809170625","https://openalex.org/W2884681705","https://openalex.org/W2888312537","https://openalex.org/W2888328667","https://openalex.org/W2964194820","https://openalex.org/W2964322208","https://openalex.org/W2967096374","https://openalex.org/W6600459194"],"related_works":[],"abstract_inverted_index":{"Software":[0],"testing":[1,34],"is":[2,50,183],"an":[3],"essential":[4],"part":[5],"of":[6,15,30,77,97,134,143,165,191,202],"the":[7,35,47,73,78,118,132,135,155,166,171,177,192,199,227],"software":[8,24,54],"lifecycle":[9],"and":[10,17,59,75,113,149,215],"requires":[11],"a":[12,42,86,110,114,126,207,217],"substantial":[13],"amount":[14],"time":[16,32],"effort.":[18],"It":[19],"has":[20,71],"been":[21,62],"estimated":[22],"that":[23],"developers":[25,162],"spend":[26],"close":[27],"to":[28,51,64,100,130,141,153,185,198,209],"50%":[29,190],"their":[31],"on":[33],"code":[36,218],"they":[37,81],"write.":[38],"For":[39],"these":[40],"reasons,":[41],"long":[43],"standing":[44],"goal":[45],"within":[46],"research":[48],"community":[49],"(partially)":[52],"automate":[53],"testing.":[55],"While":[56],"several":[57],"techniques":[58],"tools":[60],"have":[61],"proposed":[63],"automatically":[65,101],"generate":[66,102],"test":[67,107,111,144,211,233],"methods,":[68],"recent":[69],"work":[70],"criticized":[72],"quality":[74],"usefulness":[76,201],"assert":[79,104,128,157,180,229],"statements":[80,105,230],"generate.":[82],"Therefore,":[83],"we":[84],"employ":[85],"Neural":[87],"Machine":[88],"Translation":[89],"(NMT)":[90],"based":[91],"approach":[92,204],"called":[93],"Atlas":[94,123,140,182],"(<u>A</u>u<u>T</u>omatic":[95],"<u>L</u>earning":[96],"<u>A</u>ssert":[98],"<u>S</u>tatements)":[99],"meaningful":[103,127],"for":[106,221],"methods.":[108],"Given":[109],"method":[112,116,120],"focal":[115,136],"(i.e.,":[117],"main":[119],"under":[121],"test),":[122],"can":[124,224],"predict":[125,154,186],"statement":[129,158],"assess":[131],"correctness":[133],"method.":[137],"We":[138],"applied":[139],"thousands":[142],"methods":[145],"from":[146,226],"GitHub":[147],"projects":[148],"it":[150],"was":[151],"able":[152,184],"exact":[156,187],"manually":[159],"written":[160],"by":[161],"in":[163,189],"31%":[164],"cases":[167],"when":[168],"only":[169],"considering":[170,176],"top-1":[172],"predicted":[173,179],"assert.":[174],"When":[175],"top-5":[178],"statements,":[181],"matches":[188],"cases.":[193],"These":[194],"promising":[195],"results":[196],"hint":[197],"potential":[200],"our":[203],"as":[205],"(i)":[206],"complement":[208],"automatic":[210],"case":[212],"generation":[213],"techniques,":[214],"(ii)":[216],"completion":[219],"support":[220],"developers,":[222],"who":[223],"benefit":[225],"recommended":[228],"while":[231],"writing":[232],"code.":[234]},"counts_by_year":[{"year":2026,"cited_by_count":3},{"year":2025,"cited_by_count":27},{"year":2024,"cited_by_count":25},{"year":2023,"cited_by_count":25},{"year":2022,"cited_by_count":10},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":1}],"updated_date":"2026-03-27T14:29:43.386196","created_date":"2020-02-24T00:00:00"}
