Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
41 tokens/sec
GPT-4o
60 tokens/sec
Gemini 2.5 Pro Pro
44 tokens/sec
o3 Pro
8 tokens/sec
GPT-4.1 Pro
50 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

An Empirical Evaluation of Using Large Language Models for Automated Unit Test Generation (2302.06527v4)

Published 13 Feb 2023 in cs.SE and cs.AI

Abstract: Unit tests play a key role in ensuring the correctness of software. However, manually creating unit tests is a laborious task, motivating the need for automation. LLMs have recently been applied to this problem, utilizing additional training or few-shot learning on examples of existing tests. This paper presents a large-scale empirical evaluation on the effectiveness of LLMs for automated unit test generation without additional training or manual effort, providing the LLM with the signature and implementation of the function under test, along with usage examples extracted from documentation. We also attempt to repair failed generated tests by re-prompting the model with the failing test and error message. We implement our approach in TestPilot, a test generation tool for JavaScript that automatically generates unit tests for all API functions in an npm package. We evaluate TestPilot using OpenAI's gpt3.5-turbo LLM on 25 npm packages with a total of 1,684 API functions. The generated tests achieve a median statement coverage of 70.2% and branch coverage of 52.8%, significantly improving on Nessie, a recent feedback-directed JavaScript test generation technique, which achieves only 51.3% statement coverage and 25.6% branch coverage. We also find that 92.8% of TestPilot's generated tests have no more than 50% similarity with existing tests (as measured by normalized edit distance), with none of them being exact copies. Finally, we run TestPilot with two additional LLMs, OpenAI's older code-cushman-002 LLM and the open LLM StarCoder. Overall, we observed similar results with the former (68.2% median statement coverage), and somewhat worse results with the latter (54.0% median statement coverage), suggesting that the effectiveness of the approach is influenced by the size and training set of the LLM, but does not fundamentally depend on the specific model.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (80)
  1. E. Daka and G. Fraser, “A survey on unit testing practices and problems,” in 2014 IEEE 25th International Symposium on Software Reliability Engineering, 2014, pp. 201–211.
  2. B. P. Miller, L. Fredriksen, and B. So, “An empirical study of the reliability of UNIX utilities,” Commun. ACM, vol. 33, no. 12, pp. 32–44, 1990. [Online]. Available: https://doi.org/10.1145/96267.96279
  3. M. Zalewski, “American fuzzy lop,” https://lcamtuf.coredump.cx/afl/, 2022.
  4. C. Csallner and Y. Smaragdakis, “JCrasher: an automatic robustness tester for Java,” Software Practice and Experience, vol. 34, no. 11, pp. 1025–1050, 2004.
  5. C. Pacheco and M. D. Ernst, “Randoop: Feedback-directed random testing for java,” in Companion to the 22Nd ACM SIGPLAN Conference on Object-oriented Programming Systems and Applications Companion, ser. OOPSLA ’07.   New York, NY, USA: ACM, 2007, pp. 815–816. [Online]. Available: http://doi.acm.org/10.1145/1297846.1297902
  6. C. Pacheco, S. K. Lahiri, and T. Ball, “Finding errors in .net with feedback-directed random testing,” in Proceedings of the 2008 International Symposium on Software Testing and Analysis, ser. ISSTA ’08.   New York, NY, USA: ACM, 2008, pp. 87–96. [Online]. Available: http://doi.acm.org/10.1145/1390630.1390643
  7. M. Selakovic, M. Pradel, R. Karim, and F. Tip, “Test generation for higher-order functions in dynamic languages,” Proc. ACM Program. Lang., vol. 2, no. OOPSLA, pp. 161:1–161:27, 2018. [Online]. Available: https://doi.org/10.1145/3276531
  8. E. Arteca, S. Harner, M. Pradel, and F. Tip, “Nessie: Automatically testing javascript apis with asynchronous callbacks,” in 44th IEEE/ACM 44th International Conference on Software Engineering, ICSE 2022, Pittsburgh, PA, USA, May 25-27, 2022.   ACM, 2022, pp. 1494–1505. [Online]. Available: https://doi.org/10.1145/3510003.3510106
  9. P. Godefroid, N. Klarlund, and K. Sen, “DART: directed automated random testing,” in Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation, Chicago, IL, USA, June 12-15, 2005, V. Sarkar and M. W. Hall, Eds.   ACM, 2005, pp. 213–223. [Online]. Available: https://doi.org/10.1145/1065010.1065036
  10. K. Sen, D. Marinov, and G. Agha, “CUTE: a concolic unit testing engine for C,” in Proceedings of the 10th European Software Engineering Conference held jointly with 13th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2005, Lisbon, Portugal, September 5-9, 2005, M. Wermelinger and H. C. Gall, Eds.   ACM, 2005, pp. 263–272. [Online]. Available: https://doi.org/10.1145/1081706.1081750
  11. C. Cadar, V. Ganesh, P. M. Pawlowski, D. L. Dill, and D. R. Engler, “EXE: automatically generating inputs of death,” in Proceedings of the 13th ACM Conference on Computer and Communications Security, CCS 2006, Alexandria, VA, USA, October 30 - November 3, 2006, A. Juels, R. N. Wright, and S. D. C. di Vimercati, Eds.   ACM, 2006, pp. 322–335. [Online]. Available: https://doi.org/10.1145/1180405.1180445
  12. N. Tillmann, J. de Halleux, and T. Xie, “Transferring an automated test generation tool to practice: from pex to fakes and code digger,” in ACM/IEEE International Conference on Automated Software Engineering, ASE ’14, Vasteras, Sweden - September 15 - 19, 2014, I. Crnkovic, M. Chechik, and P. Grünbacher, Eds.   ACM, 2014, pp. 385–396. [Online]. Available: https://doi.org/10.1145/2642937.2642941
  13. G. Fraser and A. Arcuri, “Evolutionary generation of whole test suites,” in Proceedings of the 11th International Conference on Quality Software, QSIC 2011, Madrid, Spain, July 13-14, 2011, M. Núñez, R. M. Hierons, and M. G. Merayo, Eds.   IEEE Computer Society, 2011, pp. 31–40. [Online]. Available: https://doi.org/10.1109/QSIC.2011.19
  14. ——, “EvoSuite: automatic test suite generation for object-oriented software,” in SIGSOFT/FSE’11 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE-19) and ESEC’11: 13th European Software Engineering Conference (ESEC-13), Szeged, Hungary, September 5-9, 2011, T. Gyimóthy and A. Zeller, Eds.   ACM, 2011, pp. 416–419. [Online]. Available: https://doi.org/10.1145/2025113.2025179
  15. M. M. Almasi, H. Hemmati, G. Fraser, A. Arcuri, and J. Benefelds, “An industrial evaluation of unit test generation: Finding real faults in a financial application,” in 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP).   IEEE, 2017, pp. 263–272.
  16. G. Grano, S. Scalabrino, H. C. Gall, and R. Oliveto, “An empirical investigation on the readability of manual and generated test cases,” in 2018 IEEE/ACM 26th International Conference on Program Comprehension (ICPC).   IEEE, 2018, pp. 348–3483.
  17. E. Daka, J. Campos, G. Fraser, J. Dorn, and W. Weimer, “Modeling readability to improve unit tests,” in Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2015, Bergamo, Italy, August 30 - September 4, 2015, E. D. Nitto, M. Harman, and P. Heymans, Eds.   ACM, 2015, pp. 107–118. [Online]. Available: https://doi.org/10.1145/2786805.2786838
  18. A. Panichella, S. Panichella, G. Fraser, A. A. Sawant, and V. J. Hellendoorn, “Revisiting test smells in automatically generated tests: Limitations, pitfalls, and opportunities,” in IEEE International Conference on Software Maintenance and Evolution, ICSME 2020, Adelaide, Australia, September 28 - October 2, 2020.   IEEE, 2020, pp. 523–533. [Online]. Available: https://doi.org/10.1109/ICSME46990.2020.00056
  19. F. Palomba, D. D. Nucci, A. Panichella, R. Oliveto, and A. D. Lucia, “On the diffusion of test smells in automatically generated test code: an empirical study,” in Proceedings of the 9th International Workshop on Search-Based Software Testing, SBST@ICSE 2016, Austin, Texas, USA, May 14-22, 2016.   ACM, 2016, pp. 5–14. [Online]. Available: https://doi.org/10.1145/2897010.2897016
  20. B. Chen, F. Zhang, A. Nguyen, D. Zan, Z. Lin, J.-G. Lou, and W. Chen, “CodeT: Code Generation with Generated Tests,” 2022. [Online]. Available: https://arxiv.org/abs/2207.10397
  21. S. K. Lahiri, A. Naik, G. Sakkas, P. Choudhury, C. von Veh, M. Musuvathi, J. P. Inala, C. Wang, and J. Gao, “Interactive Code Generation via Test-Driven User-Intent Formalization,” 2022. [Online]. Available: https://arxiv.org/abs/2208.05950
  22. P. Bareiß, B. Souza, M. d’Amorim, and M. Pradel, “Code Generation Tools (Almost) for Free? A Study of Few-Shot, Pre-Trained Language Models on Code,” CoRR, vol. abs/2206.01335, 2022. [Online]. Available: https://doi.org/10.48550/arXiv.2206.01335
  23. M. Tufano, D. Drain, A. Svyatkovskiy, S. K. Deng, and N. Sundaresan, “Unit test case generation with transformers and focal context,” arXiv, May 2021. [Online]. Available: https://www.microsoft.com/en-us/research/publication/unit-test-case-generation-with-transformers-and-focal-context/
  24. C. Lemieux, J. P. Inala, S. K. Lahiri, and S. Sen, “CodaMOSA: Escaping coverage plateaus in test generation with pre-trained large language models,” in 45th International Conference on Software Engineering, ser. ICSE, 2023.
  25. C. Watson, M. Tufano, K. Moran, G. Bavota, and D. Poshyvanyk, “On Learning Meaningful Assert Statements for Unit Test Cases,” in Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering.   ACM, jun 2020. [Online]. Available: https://doi.org/10.1145%2F3377811.3380429
  26. A. Mastropaolo, S. Scalabrino, N. Cooper, D. Nader Palacio, D. Poshyvanyk, R. Oliveto, and G. Bavota, “Studying the usage of text-to-text transfer transformer to support code-related tasks,” in 43rd IEEE/ACM International Conference on Software Engineering (ICSE), 2021, pp. 336–347.
  27. J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova, “Bert: Pre-training of deep bidirectional transformers for language understanding,” arXiv preprint arXiv:1810.04805, 2018.
  28. T. B. Brown, B. Mann, N. Ryder, M. Subbiah, J. Kaplan, P. Dhariwal, A. Neelakantan, P. Shyam, G. Sastry, A. Askell, S. Agarwal, A. Herbert-Voss, G. Krueger, T. Henighan, R. Child, A. Ramesh, D. M. Ziegler, J. Wu, C. Winter, C. Hesse, M. Chen, E. Sigler, M. Litwin, S. Gray, B. Chess, J. Clark, C. Berner, S. McCandlish, A. Radford, I. Sutskever, and D. Amodei, “Language models are few-shot learners,” 2020. [Online]. Available: https://arxiv.org/abs/2005.14165
  29. M. Chen, J. Tworek, H. Jun, Q. Yuan, H. P. de Oliveira Pinto, J. Kaplan, H. Edwards, Y. Burda, N. Joseph, G. Brockman, A. Ray, R. Puri, G. Krueger, M. Petrov, H. Khlaaf, G. Sastry, P. Mishkin, B. Chan, S. Gray, N. Ryder, M. Pavlov, A. Power, L. Kaiser, M. Bavarian, C. Winter, P. Tillet, F. P. Such, D. Cummings, M. Plappert, F. Chantzis, E. Barnes, A. Herbert-Voss, W. H. Guss, A. Nichol, A. Paino, N. Tezak, J. Tang, I. Babuschkin, S. Balaji, S. Jain, W. Saunders, C. Hesse, A. N. Carr, J. Leike, J. Achiam, V. Misra, E. Morikawa, A. Radford, M. Knight, M. Brundage, M. Murati, K. Mayer, P. Welinder, B. McGrew, D. Amodei, S. McCandlish, I. Sutskever, and W. Zaremba, “Evaluating Large Language Models Trained on Code,” CoRR, vol. abs/2107.03374, 2021. [Online]. Available: https://arxiv.org/abs/2107.03374
  30. Y. Li, D. Choi, J. Chung, N. Kushman, J. Schrittwieser, R. Leblond, T. Eccles, J. Keeling, F. Gimeno, A. D. Lago, T. Hubert, P. Choy, C. d. M. d’Autume, I. Babuschkin, X. Chen, P.-S. Huang, J. Welbl, S. Gowal, A. Cherepanov, J. Molloy, D. J. Mankowitz, E. S. Robson, P. Kohli, N. de Freitas, K. Kavukcuoglu, and O. Vinyals, “Competition-level code generation with alphacode,” 2022. [Online]. Available: https://arxiv.org/abs/2203.07814
  31. J. Li, Y. Wang, M. R. Lyu, and I. King, “Code completion with neural attention and pointer networks,” in Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, IJCAI 2018, July 13-19, 2018, Stockholm, Sweden, J. Lang, Ed.   ijcai.org, 2018, pp. 4159–4165. [Online]. Available: https://doi.org/10.24963/ijcai.2018/578
  32. A. Svyatkovskiy, S. K. Deng, S. Fu, and N. Sundaresan, “Intellicode compose: code generation using transformer,” in ESEC/FSE ’20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Virtual Event, USA, November 8-13, 2020, P. Devanbu, M. B. Cohen, and T. Zimmermann, Eds.   ACM, 2020, pp. 1433–1443. [Online]. Available: https://doi.org/10.1145/3368089.3417058
  33. R. Karampatsis, H. Babii, R. Robbes, C. Sutton, and A. Janes, “Big code != big vocabulary: open-vocabulary models for source code,” in ICSE ’20: 42nd International Conference on Software Engineering, Seoul, South Korea, 27 June - 19 July, 2020, G. Rothermel and D. Bae, Eds.   ACM, 2020, pp. 1073–1085. [Online]. Available: https://doi.org/10.1145/3377811.3380342
  34. S. Kim, J. Zhao, Y. Tian, and S. Chandra, “Code prediction by feeding trees to transformers,” in 43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021, Madrid, Spain, 22-30 May 2021.   IEEE, 2021, pp. 150–162. [Online]. Available: https://doi.org/10.1109/ICSE43902.2021.00026
  35. GitHub, “GitHub Copilot,” https://copilot.github.com/, 2022.
  36. R. Gupta, S. Pal, A. Kanade, and S. K. Shevade, “Deepfix: Fixing common C language errors by deep learning,” in Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence, February 4-9, 2017, San Francisco, California, USA, S. Singh and S. Markovitch, Eds.   AAAI Press, 2017, pp. 1345–1351. [Online]. Available: http://aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14603
  37. V. J. Hellendoorn, C. Sutton, R. Singh, P. Maniatis, and D. Bieber, “Global relational models of source code,” in 8th International Conference on Learning Representations, ICLR 2020, Addis Ababa, Ethiopia, April 26-30, 2020.   OpenReview.net, 2020. [Online]. Available: https://openreview.net/forum?id=B1lnbRNtwr
  38. M. Allamanis, H. Jackson-Flux, and M. Brockschmidt, “Self-supervised bug detection and repair,” in Advances in Neural Information Processing Systems 34: Annual Conference on Neural Information Processing Systems 2021, NeurIPS 2021, December 6-14, 2021, virtual, M. Ranzato, A. Beygelzimer, Y. N. Dauphin, P. Liang, and J. W. Vaughan, Eds., 2021, pp. 27 865–27 876. [Online]. Available: https://proceedings.neurips.cc/paper/2021/hash/ea96efc03b9a050d895110db8c4af057-Abstract.html
  39. M. Pradel and K. Sen, “Deepbugs: a learning approach to name-based bug detection,” Proc. ACM Program. Lang., vol. 2, no. OOPSLA, pp. 147:1–147:25, 2018. [Online]. Available: https://doi.org/10.1145/3276517
  40. M. Allamanis, M. Brockschmidt, and M. Khademi, “Learning to represent programs with graphs,” in 6th International Conference on Learning Representations, ICLR 2018, Vancouver, BC, Canada, April 30 - May 3, 2018, Conference Track Proceedings.   OpenReview.net, 2018. [Online]. Available: https://openreview.net/forum?id=BJOFETxR-
  41. M. Lewis, Y. Liu, N. Goyal, M. Ghazvininejad, A. Mohamed, O. Levy, V. Stoyanov, and L. Zettlemoyer, “Bart: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension,” arXiv preprint arXiv:1910.13461, 2019.
  42. A. Mastropaolo, N. Cooper, D. N. Palacio, S. Scalabrino, D. Poshyvanyk, R. Oliveto, and G. Bavota, “Using transfer learning for code-related tasks,” IEEE Transactions on Software Engineering, 2022.
  43. M. Tufano, D. Drain, A. Svyatkovskiy, and N. Sundaresan, “Generating accurate assert statements for unit test cases using pretrained transformers,” in Proceedings of the 3rd ACM/IEEE International Conference on Automation of Software Test, ser. AST ’22.   New York, NY, USA: Association for Computing Machinery, 2022, p. 54–64. [Online]. Available: https://doi.org/10.1145/3524481.3527220
  44. L. Reynolds and K. McDonell, “Prompt programming for large language models: Beyond the few-shot paradigm,” 2021. [Online]. Available: https://arxiv.org/abs/2102.07350
  45. OpenAI, “OpenAI LLMs: Deprecations,” https://platform.openai.com/docs/deprecations, 2023.
  46. HuggingFace, “Starcoder: A state-of-the-art LLM for code,” https://huggingface.co/blog/starcoder, 2023.
  47. “Mocha,” https://mochajs.org/, 2022.
  48. G. Mezzetti, A. Møller, and M. T. Torp, “Type Regression Testing to Detect Breaking Changes in Node.js Libraries,” in 32nd European Conference on Object-Oriented Programming, ECOOP 2018, July 16-21, 2018, Amsterdam, The Netherlands, ser. LIPIcs, T. D. Millstein, Ed., vol. 109.   Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, 2018, pp. 7:1–7:24.
  49. OpenAI, “OpenAI Codex,” https://openai.com/blog/openai-codex, 2023.
  50. “Istanbul coverage tool,” https://istanbul.js.org/, 2022.
  51. S. Yoo and M. Harman, “Regression testing minimization, selection and prioritization: a survey,” Software testing, verification and reliability, vol. 22, no. 2, pp. 67–120, 2012.
  52. N. Cliff, “Dominance statistics: Ordinal analyses to answer ordinal questions.” Psychological bulletin, vol. 114, no. 3, p. 494, 1993.
  53. M. Selakovic, M. Pradel, R. Karim, and F. Tip, “Test generation for higher-order functions in dynamic languages,” Proceedings of the ACM on Programming Languages, vol. 2, no. OOPSLA, pp. 1–27, 2018.
  54. GitHub, “CodeQL,” https://codeql.github.com/, 2022.
  55. O. Foundation, “Node.js error codes,” https://nodejs.org/dist/latest-v18.x/docs/api/errors.html#nodejs-error-codes, 2022.
  56. S. Schleimer, D. S. Wilkerson, and A. Aiken, “Winnowing: Local algorithms for document fingerprinting,” in Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, ser. SIGMOD ’03.   New York, NY, USA: Association for Computing Machinery, 2003, p. 76–85. [Online]. Available: https://doi.org/10.1145/872757.872770
  57. G. Myers, “A fast bit-vector algorithm for approximate string matching based on dynamic programming,” J. ACM, vol. 46, no. 3, p. 395–415, may 1999. [Online]. Available: https://doi.org/10.1145/316542.316550
  58. “npm levenshtein distance package.” [Online]. Available: https://www.npmjs.com/package/levenshtein
  59. D. Schuler and A. Zeller, “Assessing oracle quality with checked coverage,” in Fourth IEEE International Conference on Software Testing, Verification and Validation, 2011, pp. 90–99.
  60. P. McMinn, “Search-based software testing: Past, present and future,” in Fourth IEEE International Conference on Software Testing, Verification and Validation, ICST 2012, Berlin, Germany, 21-25 March, 2011, Workshop Proceedings.   IEEE Computer Society, 2011, pp. 153–163. [Online]. Available: https://doi.org/10.1109/ICSTW.2011.100
  61. A. Panichella, F. M. Kifetew, and P. Tonella, “Automated test case generation as a many-objective optimisation problem with dynamic selection of the targets,” IEEE Transactions on Software Engineering, vol. 44, no. 2, pp. 122–158, 2018.
  62. M. Pradel and S. Chandra, “Neural software analysis,” Commun. ACM, vol. 65, no. 1, pp. 86–96, 2022. [Online]. Available: https://doi.org/10.1145/3460348
  63. H. Yu, Y. Lou, K. Sun, D. Ran, T. Xie, D. Hao, Y. Li, G. Li, and Q. Wang, “Automated Assertion Generation via Information Retrieval and Its Integration with Deep Learning,” in Proceedings of the 44th International Conference on Software Engineering, ser. ICSE ’22.   New York, NY, USA: Association for Computing Machinery, 2022, p. 163–174. [Online]. Available: https://doi.org/10.1145/3510003.3510149
  64. E. Dinella, G. Ryan, T. Mytkowicz, and S. K. Lahiri, “Toga: A neural method for test oracle generation,” in Proceedings of the 44th International Conference on Software Engineering, ser. ICSE ’22.   New York, NY, USA: Association for Computing Machinery, 2022, p. 2130–2141. [Online]. Available: https://doi.org/10.1145/3510003.3510141
  65. Z. Liu, K. Liu, X. Xia, and X. Yang, “Towards more realistic evaluation for neural test oracle generation,” in Proceedings of the ACM SIGSOFT International Symposium on Software Testing and Analysis, ser. ISSTA ’23, 2023.
  66. R. Just, D. Jalali, and M. D. Ernst, “Defects4j: a database of existing faults to enable controlled testing studies for java programs,” in International Symposium on Software Testing and Analysis, ISSTA ’14, San Jose, CA, USA - July 21 - 26, 2014, C. S. Pasareanu and D. Marinov, Eds.   ACM, 2014, pp. 437–440. [Online]. Available: https://doi.org/10.1145/2610384.2628055
  67. D. M. Stallenberg, M. Olsthoorn, and A. Panichella, “Guess what: Test case generation for Javascript with unsupervised probabilistic type inference,” in Search-Based Software Engineering - 14th International Symposium, SSBSE 2022, Singapore, November 17-18, 2022, Proceedings, ser. Lecture Notes in Computer Science, M. Papadakis and S. R. Vergilio, Eds., vol. 13711.   Springer, 2022, pp. 67–82. [Online]. Available: https://doi.org/10.1007/978-3-031-21251-2_5
  68. K. El Haji, “Empirical study on test generation using GitHub Copilot,” Master’s thesis, Delft University of Technology, 2023.
  69. E. Andreasen, L. Gong, A. Møller, M. Pradel, M. Selakovic, K. Sen, and C. Staicu, “A survey of dynamic analysis and test generation for JavaScript,” ACM Comput. Surv., vol. 50, no. 5, pp. 66:1–66:36, 2017. [Online]. Available: https://doi.org/10.1145/3106739
  70. P. Saxena, D. Akhawe, S. Hanna, F. Mao, S. McCamant, and D. Song, “A symbolic execution framework for JavaScript,” in 31st IEEE Symposium on Security and Privacy, S&P 2010, 16-19 May 2010, Berleley/Oakland, California, USA.   IEEE Computer Society, 2010, pp. 513–528. [Online]. Available: https://doi.org/10.1109/SP.2010.38
  71. S. Artzi, J. Dolby, S. H. Jensen, A. Møller, and F. Tip, “A framework for automated testing of JavaScript web applications,” in Proceedings of the 33rd International Conference on Software Engineering, ICSE 2011, Waikiki, Honolulu , HI, USA, May 21-28, 2011, R. N. Taylor, H. C. Gall, and N. Medvidovic, Eds.   ACM, 2011, pp. 571–580. [Online]. Available: https://doi.org/10.1145/1985793.1985871
  72. G. Li, E. Andreasen, and I. Ghosh, “Symjs: automatic symbolic testing of JavaScript web applications,” in Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, (FSE-22), Hong Kong, China, November 16 - 22, 2014, S. Cheung, A. Orso, and M. D. Storey, Eds.   ACM, 2014, pp. 449–459. [Online]. Available: https://doi.org/10.1145/2635868.2635913
  73. H. Tanida, T. Uehara, G. Li, and I. Ghosh, “Automatic Unit Test Generation and Execution for JavaScript Program through Symbolic Execution,” in Proceedings of the Ninth International Conference on Software Engineering Advances, 2014, pp. 259–265.
  74. A. M. Fard, A. Mesbah, and E. Wohlstadter, “Generating fixtures for JavaScript unit testing,” in 30th IEEE/ACM International Conference on Automated Software Engineering, ASE 2015, Lincoln, NE, USA, November 9-13, 2015, M. B. Cohen, L. Grunske, and M. Whalen, Eds.   IEEE Computer Society, 2015, pp. 190–200. [Online]. Available: https://doi.org/10.1109/ASE.2015.26
  75. A. Marchetto and P. Tonella, “Using search-based algorithms for Ajax event sequence generation during testing,” Empir. Softw. Eng., vol. 16, no. 1, pp. 103–140, 2011. [Online]. Available: https://doi.org/10.1007/s10664-010-9149-1
  76. S. Mirshokraie and A. Mesbah, “JSART: JavaScript assertion-based regression testing,” in Web Engineering - 12th International Conference, ICWE 2012, Berlin, Germany, July 23-27, 2012. Proceedings, ser. Lecture Notes in Computer Science, M. Brambilla, T. Tokuda, and R. Tolksdorf, Eds., vol. 7387.   Springer, 2012, pp. 238–252. [Online]. Available: https://doi.org/10.1007/978-3-642-31753-8_18
  77. “The Daikon invariant detector,” http://plse.cs.washington.edu/daikon/, 2023.
  78. S. Mirshokraie, A. Mesbah, and K. Pattabiraman, “PYTHIA: generating test cases with oracles for JavaScript applications,” in 2013 28th IEEE/ACM International Conference on Automated Software Engineering, ASE 2013, Silicon Valley, CA, USA, November 11-15, 2013, E. Denney, T. Bultan, and A. Zeller, Eds.   IEEE, 2013, pp. 610–615. [Online]. Available: https://doi.org/10.1109/ASE.2013.6693121
  79. ——, “JSEFT: automated Javascript unit test generation,” in 8th IEEE International Conference on Software Testing, Verification and Validation, ICST 2015, Graz, Austria, April 13-17, 2015.   IEEE Computer Society, 2015, pp. 1–10. [Online]. Available: https://doi.org/10.1109/ICST.2015.7102595
  80. A. M. Fard, M. MirzaAghaei, and A. Mesbah, “Leveraging existing tests in automated test generation for web applications,” in ACM/IEEE International Conference on Automated Software Engineering, ASE ’14, Vasteras, Sweden - September 15 - 19, 2014, I. Crnkovic, M. Chechik, and P. Grünbacher, Eds.   ACM, 2014, pp. 67–78. [Online]. Available: https://doi.org/10.1145/2642937.2642991
User Edit Pencil Streamline Icon: https://streamlinehq.com
Authors (4)
  1. Max Schäfer (11 papers)
  2. Sarah Nadi (16 papers)
  3. Aryaz Eghbali (4 papers)
  4. Frank Tip (8 papers)
Citations (136)