Why Execution of Automated End-to-End (via UI) Tests is Mostly Faster in Scripting Languages (e.g. Ruby) than in Compiled Languages (e.g. C#)?

Compiled languages are designed for building system/enterprise apps, rather than being optimized for scripting automated tests

Zhimin Zhan

--

A repost of my daughter’s article, I added a few notes.

A Java/C# developer would say “Haha, Zhimin, you are wrong this time. Compiled languages, such as Java, is an order of magnitude faster than scripting languages, such as Ruby”. In terms of raw speed, that’s correct. But I am talking in the context of end-to-end (via UI) test automation. The context matters, an aeroplane goes slower than a Tesla on the ground.

Zhimin’s Notes: I have programmed professionally (getting paid) in C++, Perl, Java, JavaScript and Ruby. If purely focus on raw execution speed, we shall all go C++.

Also, I used the adjective “Mostly” in the context of End-to-End Test Execution. What’s the most common form of test execution a test automation engineer performs every day? Running individual test cases, which is the execution mode of the following activities.

  • during creating a new test case
  • debugging a test case
  • fix a test case ( failed in a run on the CT Server)
  • maintain a test case (due to app changes)

--

--