In automated testing the Test Engineer or Software Quality Assurance person must have software coding ability, since the test cases are written in the form of source code which, when run, produce output according to the assertions that are a part of it.
One way to generate test cases automatically is model-based testing through use of a model of the system for test case generation.
In some cases, the model-based approach enables non-technical users to create automated business test cases in plain English so that no programming of any kind is needed in order to configure them for multiple operating systems, browsers, and smart devices.