American Academic Scientific Research Journal for Engineering, Technology, and Sciences (ASRJETS) (2023) Volume 91, No 1, pp 28-35
29
Codeless testing can be traced back to 2004 [5], when Selenium was first introduced. The earliest literature
connected to Selenium dates back to 2006 [6] (2005, if you count one mention of Selenium). Selenium has since
been referenced in several other studies as well. Despite its popularity, Selenium is limited to codeless test
automation for web applications. The term “codeless testing” (and its variations) do not appear in research
literature until a 2011 paper [7] that mentions it in the context of LISA, which is now rebranded to CA DevTest.
It’s an automated testing solution, so it can be used for codeless test automation. Codeless testing is mostly
mentioned in the context of LISA, even in later literature.
The development of QA has also evolved over the years. The literature on development QA, including courses,
stretches back at least three decades. Most of the early literature is about the frameworks and practices
associated with manual testing. Some of the earliest papers on automating the software development QA dates
back to 1985. The latest papers offer insights into how development QA has matured, especially in the context
of automation, even though there might still be limitations to what can be achieved [8] as well as challenges [9].
Current development QA automation trends include their overlap with Artificial Intelligence (AI) and Machine
Learning (ML), which may trigger advances in codeless test automation.
From preliminary research, it can be concluded that - Despite the obvious benefits it offers, including faster
development cycles and expanding the domain of software testing and QA beyond test developers, codeless test
automation has yet to become a norm within the development of QA. This paper aims to explore the reasons
behind this phenomenon by referencing the existing literature on the topic of automated testing, codeless testing,
and development QA practices and frameworks to identify the friction points. In addition to identifying the
friction points, we will also explore the availability of tools like Selenium that may be employed directly or
repurposed for development QA that covers more than just web applications.
2. Codeless Test Automation
Test automation can be defined as the process of automating software testing by generating, maintaining, or
modifying test data, executing pre-defined testing scenarios, and compiling the results (and generating insights).
This can be achieved by writing test code separate from the source code of the software/application being
developed, using automation tools, or a combination of the two. Testing automation may take different forms
(with different levels of efficiency) based on the type and scope of the testing being performed. Unit testing
automation (which pertains to individual components/units of a software package) frameworks were already
established and were being refined in 2006 [10](possibly earlier). Large teams moved to automated unit testing
in Microsoft [11]. Nowadays, unit testing is automated, mainly using python scripts, but it’s being explored for
other languages as well [12].
Integration testing focuses on how different pieces fit together and can be automated using frameworks like Java
Spring [13]. Automated system testing is conducted using code, conventional tools, and even GUI-based tools
[14]. Automated acceptance testing frameworks and tools started emerging from the early days of agile [15],
and tools like JAutomate [16] have been available in the market for several years now.