The Sofy Glossary: No-Code Automation Testing Terms to Know

Given how quickly the DevOps landscape continues to shift, it's easy to get confused and overwhelmed by unfamiliar terms. But don't fret: Sofy is here to help!

See all articles
The Sofy Glossary: No-Code Automation Testing Terms to Know

Image: Shutterstock

While many terms found throughout Sofy’s website and documentation are nothing new to seasoned engineers, Sofy’s no-code approach makes what were once highly technical, time-consuming, and just generally complex tasks incredibly easy to approach. In turn, a portion of our user community benefits from a little explanation of technical terms they may encounter while interacting with Sofy. To help make an easy process even easier, we’ve compiled the brief glossary below.

Automation, mobile automation

We all know what automation is—we’re surrounded by automated tasks performed by, for example, machines and Artificial Intelligence—but the phrase mobile automation is not as immediately clear. For our purposes at Sofy, mobile automation refers to automated testing performed on mobile devices, often through an app (such as Appium) or a browser-based service.

APK & IPA

APK and IPA are file types. APK is the standard file format for Android apps and IPA is a common file format used by Apple apps. 

Apple provisioning, UDIDs, & developer provisioning files

Apple places specific restrictions on app distribution in the company’s software ecosystem. Sofy primarily handle developer builds, beta versions of an app. Apple restricts developer build use to devices for which the company has granted permission specifically for testing purposes. Apple requires that developers integrate unique device IDs (UDIDs) into their test builds (a process known as signing the build). You can find Apple permission information in a test build’s developer provisioning file.

AR & VR

AR (augmented reality) and VR (virtual reality) refer to two different but closely related approaches to human interface and interaction with virtual spaces. Augmented reality generally manifests today as a digital user interface overlay attached to cameras or similar devices, allowing users to interact with or simply view the world around them with digital augmentation, like notifications about receiving text messages or emails.

Today, well-known augmented reality devices include sunglasses featuring digital overlays (like Google’s line of Glass smart glasses and smart phone camera-focused games such as Niantic, Nintendo, and the Pokémon Company’s highly popular Pokémon Go (2016).

Rather than augmenting the world around a user, virtual reality invites users to enter a new reality altogether: A virtual one. Virtual reality provides users with a simulation of an environment. They experience this environment by way of a device, usually a dedicated virtual reality headset combined with peripherals that allow a user to interact with the user’s digital surroundings. Well-known virtual reality companies include VIVE and Meta.

Both augmented reality and virtual reality offer a wide variety of potential applications. These include not only recreation (such as VR-specific games) and the ability to socialize with other users in virtual spaces, but are increasingly also used for a wide variety of other purposes, such as medical and military training.

Bug tracking platforms

Certainly, bugs are a crucial part of the world’s ecosystems, but when it comes to the digital world, bugs are simply no good. We’ve all encountered bugs in software and know that they can be a serious problem. It’s important for developers to squash them as quickly as possible, and ideally before they multiply! In turn, every development team needs some organized means of tracking bugs. This usually takes the form of a platform (such as Jira) where users who experience problems inform development teams by way of submitting a formal ‘ticket’. This ticket is then viewed and addressed by engineers and other relevant personnel.

CI/CD

CI stands for Continuous Integration while CD is an abbreviation of Continuous Deployment. Together, CI/CD form a developmental pipeline in which developers make frequent and reliable incremental code changes. The CI/CD pipeline maximizes efficiency, keeping development on schedule. Sofy integrates with developer platforms, allowing developers to directly upload their work to Sofy. Have a look at the top CI/CD platforms we see in use by the Sofy community here.

Cloud, cloud device

Whereas an actual cloud floats above us, far away in the sky, ‘The Cloud’ exists on servers across the world. In short, ‘The Cloud’ is simply the internet. Cloud services are those that may be accessed solely ‘in the Cloud’ and, in turn, a Cloud Device is a device that you access through the internet. Sofy’s test lab, where engineers can test apps with physical devices, makes for an excellent example.

Element attributes

When you look at an app and see an icon, picture, or a button, what you’re seeing are known as elements. While these may look perfectly simple and straightforward when handling a public build, ‘under the hood’ elements can be quite complex, involving a wide variety of attributes, which in turn are essentially a large number of scripts. Sofy uses these attributes to generate automations (that is, generating scripts under the hood). This makes working with elements easy. For example, Sofy ensures that an element is not a factor when creating an automation because Sofy reads all elements on a screen as a JSON (JavaScript Object Notation) file.

Manual-code, low-code, & no-code

The differences between manual-code, low-code, and no-code are significant, and each come with their pros and cons. You can read about each in-depth here. Sofy’s no-code approach bypasses historic problems associated with each by automatically generating scripts in the backend, saving development time, effort, and resources.

Machine learning (ML)

Generally speaking, machine learning is the processes wherein a program gains information to complete a task by way of algorithms. When properly setup, learning algorithms can ideally complete tasks without necessarily being programmed to do so. The concept of machine learning is closely tied to a variety of fields and topics, such as data mining, natural language processing (see below), and artificial intelligence. Arguably still in its infancy, machine learning is a rapidly developing field.

Natural language processing (NLP)

Natural language is—put plainly—organic human language. In the context of machine learning (see above), the ability for machines to process. By way of natural language processes, machines can use language to perform tasks like generating instructions for human audiences. Natural language processing is closely associated with machine learning (see above).

Quality assurance (QA)

From our transportation to the food we eat, we have quality assurance processes to thank for safety and ease of use in just about every aspect of our daily lives. In the mobile app development space, quality assurance makes for the difference between an unusable mess and the smooth experience we enjoy from the apps we turn to for vital information and services every day.

Mobile app quality assurance typically involves ensuring that an app’s user interface (UI) is appealing, coherent, and—crucially—usable. Quality assurance personnel either manually test an app on a device in their possession or by way of writing script to automate a sequence of actions. Sofy provides developers with the ability to easily perform these tasks without the time sink of code.

UX Journey

Abbreviated from the User Experience Journey, this consists of a user’s experience throughout a process, as designed by the owner of the process, usually a company. For example, a user’s journey from visiting an ATM and withdrawing money is a planned, measured, and monitored process conducted by a bank or credit union. For more information on this subject, see this article.

 

Sign up for a 14-day trial now!

You might also like

4 min read

Building QA Strategy: When to Use Automation, No-Code, and Custom Solutions

Software testing is taking rapid strides towards innovation and is ceaselessly enhancing and progressing with the changing technological landscape. Likewise, the software testing market is expanding quickly. In such growing market, enterprises must choose the required tools, frameworks, and processes to optimize their software development lifecycles wisely. However, testing and verifying for the right software behavior is an undeniably difficult issue which the QA and engineering teams must manage. Since, for a […]

Read more
1 2 3