I am testing an app that loads an email in an iframe. Next to the iframe is a long list of options (hundreds of options). Writing text in an option updates email text in the iframe. selecting a border color from the options changes the border color in the iframe, and on, and on.
We have a dozen email templates, and each one has several dozen to hundreds of options. Testing is critical because occasionally there are duplicate fields that do nothing and other bugs having to do with the kinds of emails we are building.
Even using page objects this is incredibly long. In this situation do testers write a script for each option, or do they write a function that crawl all inputs, write some text in them depending on what the input is supposed to do (by checking label heading), and then switch to iFrame to find a change?