Low code solution It has proved its value in the industry. Many companies have longer production times and lower development costs, but relying on these low-code solutions means sacrificing quality due to lack of testing. It may be.
“My belief is that traditional quality assurance team-type testing, developer testing, isn’t done with low-code tools,” said the UX tool director. Indigo.Design At Infragistics, a company that provides UI components. It’s like, “Hey, this tool will save us time, where can we cut out part of this time?” The tools are template-driven and must provide the experience you need. So what cuts out that test and causes problems is that the generated code is not testable code, not that code. As with regular .NET apps, Java apps, and Angular apps, architects don’t have to have a deep understanding of what low-code providers are doing to generate these screens. You can start to understand. And its contents. “
Since low-code vendors are probably already testing the component, one might think that it might remove some pressure from the tester. However, according to Beres, most tests (UX tests, unit tests, functional tests, etc.) are ignored by low-code vendors. “What they do is say,’With our tools, we provide everything. You don’t have to worry about everything else,” says Beres. ..
Eran Kinsbruner, Chief Evangelist, DevOps, Testing Company PERFORCE softwareAlso, be careful not to overly rely on the assumption that the low code vendor has tested the component.
“Low-code components are merged into your application’s code or pipeline, whether they’re well-tested or not, and you’re responsible for this,” says Kinsbruner. “That is, from the end user’s point of view, if the application has a bug in the production environment, the end user doesn’t care whether they use the vendor to auto-generate a piece of code or do it themselves. Quality. After all, it’s your responsibility, so you can’t really rely on the vendor doing the testing on your behalf. “
He tends to benefit tool vendors from the suspicion of believing that they will provide a baseline of components that work out of the box. “But if you merge it into your own business flow, it’s your responsibility and you need to be able to have almost complete control over your end-to-end user scenarios,” says Kinsbruner.
Security is also a consideration. “Suppose you are a bank and your application has its own back-end services, databases, and personal knowledge of the end user. How do these components are well tested and free of leaks and exposures?” Can you find out? “Kinsbruner said.
Another problem with asking a low code vendor to test is that even if you test the component properly, if you encounter problems, it’s difficult to get into the code, so it’s difficult for developers to solve those problems. It’s difficult. When tests are run and crashes or bugs occur, testers need the ability to get into and understand those issues. This requires some visibility.
Kinsbruner calls this a “black box” of tests because the developers don’t actually have access to the source code of the tool that generated this code.
“The application developer or product manager owns the product, regardless of where the code came from or how it was written,” says Kinsbruner. “That is, tests are tests, bugs are bugs. The only thing about the process is to understand the root cause of debugging these failures and fix them appropriately for future analysis. Let’s say you’re looking at the code created by this low-code tool and you’re finding bugs. Sometimes you can fix bugs. These are bugs that inherit from some areas of code that you don’t really control. How do you decide whether to release? How do you decide the priority and severity of these bugs? In particular, bugs, security bugs, and the root cause of these bugs. What if you may have a mix of bugs that you can’t really fix because you didn’t write your own code? “
Max de Lavenne, CEO BuildableA custom software developer, added, when troubleshooting, it’s best to avoid actually modifying the low-code solution itself. This is probably because the low-code tools are chosen to fit the project and the end goal.
If that turns out to be the case and low-code solutions start to clash with those goals, it may be best to start shopping in search of alternatives.
“To use the metaphor: if you take an apple and keep trying to transform it into a pear, it may be a sign that you should have bought a pear first,” de Lavenne said. rice field.
Testers Need to Help Vendor Selection
According to Kinsbruner, one of the pillars of a successful low-code testing process is actually involving QA in the process of choosing a low-code vendor. Ideally, the tester should be aware of the inherited APIs, dependencies, and other technologies used to write the code.
“A test automation architect or QA manager needs to know exactly the architecture and tool stack used to build the code that is to be celebrated at the end of the pre-release day.” Kinsbruner said. ..
Unfortunately, Kinsbruner’s observations put most testers in the dark from the process.
“Testers and managers need to know what a database is and what APIs are being used or called so that they can build a test environment for tools and processes. Also, these types of tools and methods. You also need to know about. I don’t think that’s the case today in most cases, “says Kinsbruner.
According to Infragistics Beres, another challenge during the selection process is to ensure that the low-code tools fit the development team’s current working style. Low-code tools can use technologies that aren’t standard for the development team, which adds complexity.
“If the development team is an Angular team, no matter what, these are things that can’t be changed in the world,” Beres said. “They aren’t going to switch to something because the design team says so. They’re not going to switch to something because executives are saying they’re going to use this tool to save time. Will use what they know. The result may be the same as they choose .NET or React, but it’s something developers are accustomed to. Therefore, Angular development If you’re a team and you know how to test and debug and run build scripts, run test scripts, and perform automation using GitHub or other tools, this is accelerated. You can enjoy the benefits of time. Market. If your low code isn’t well integrated with it, or if you’re using a non-standard one rather than in the toolchain you’re used to, you’ll fall into that category. . “
Citizen developers are lagging behind more com
Ironically, the appeal of low-code for many companies is that anyone, not just developers, can build applications. However, when bugs occur, citizen developers may not have the expertise needed to solve those problems.
“Low-code solutions that are very accessible to end users often have highly optimized or complex code for inexperienced coders to read,” said Max de Lavenne, CEO of. Stated. Buildable, Custom software development company. “Low-code builds may use display or optimization techniques that make the most of HTML and CSS. This is more than the average programmer can read. This is especially true for lowcode used in database engineering and API connectivity, so you don’t need a professional person to test your lowcode build, but you need to bring in Team A. “
According to Isaac Gould, Research Manager Nuclear researchCitizen developers, technology analysts, need to be able to handle simple workflow tests.
Eran Kinsbruner, Chief Evangelist, DevOps, Testing Company PERFORCE softwarePlease note that problems can occur if more advanced testing is required. He believes that scriptless testing tools may be the answer that allows citizen developers to test more complex workflows. “We might be able to bridge the gap by visualizing and modeling applications and tests and letting the tools create some of these test cases,” he said.
Gould said some low-code vendors may be able to set themselves apart by providing good educational tools for citizen developers.
“I think the idea of testing is that every time you build an application, you get an error in your code,” says Gould. “The question is, on these low-code platforms, determining if an error occurs in an area where the actual developer had to…