Skip to content

Question structure preview

Open any question from the Pages table: answer options and rows with labels, exclusive flags, screenout markers, expectations and selection counts.

Published 5 min read .md

The Pages table lists every page a survey showed, but a page row cannot tell you what SurveyTester actually knows about a question: which answer options it recorded, under which labels, which of them clear the others, which end the interview, and whether every option was really selected in the test runs. The question structure preview opens that knowledge in one dialog - straight from the Pages table, for any question.

Why this is hard to see otherwise

  • Options live on many pages. A question that the survey shows on several pages, or in several versions, is recorded once per page. Which of those records count, and how many options the question has today, depends on the test runs you are looking at.
  • Labels change. A corrected typo, a renamed brand, a translation: SurveyTester keeps every text a label ever had. Which text is "the" label depends on when the runs took place.
  • Flags are scattered. Exclusive options, options a user overrode, screenout markers from the survey system or the questionnaire document, expectations about rotation and dependencies - each of these is shown somewhere, but nowhere together.

What the dialog shows

Placeholder: screenshot of the question structure dialog for a multiple-choice question: the filter note at the top, the question facts, one expectation line, and a table of answer options with value, label, flags "exclusive" and "Screen out", seen counts and first-detection dates
The structure preview of a multiple-choice question
  • The filter note. The first line names the active result filter, how many test runs it contains, and how many of them showed this question. Every "selected" count and every label refers to exactly these runs.
  • Question facts. Type and usage (with a user's override, if any), first detection, the allowed number of selections, number or text ranges, whether "Other (please specify)" is allowed, and helper questions such as "Don't know" that share the page. These facts come from the detected structure and do not depend on the filter.
  • Expectations. The rotation, dependency and subset expectations stated for the question, with their origin (manual, from the questionnaire document, suggested). See Question expectations.
  • Answer options. One row per option: its value, the label that was current during the filter window with earlier texts underneath, the flags, how many of the filtered runs selected the option, and when it was first detected. An option none of the filtered runs selected stays in the list, greyed out.
  • Rows. For a grid, the same for its rows, including the sub question each row maps to.

The flags on an option:

FlagMeaning
exclusiveSelecting the option clears the others. Solid border: detected from the survey page. Dashed border: set by a user.
not exclusiveDetected as exclusive, but a user overrode it.
Screen out, QuotaThe option ends the interview. The tooltip says whether the survey system or the questionnaire document stated it - see Test cases from the survey's own rules.
anchoredKept out of the rotation by a rotation expectation.
not judgedNever judged by the item dependency expectation.

How the result filter changes the picture

The active result filter on the Pages page decides three things in the dialog:

  1. Which runs count as "selected". With a filter on one milestone, one language or one test case, an option counts as selected only when one of those runs answered with it. The count comes from the answers the runs recorded, not from the page being displayed - an option that was on screen in every run but never ticked shows a dash.
  2. Which label is current. Labels are a change history. The dialog shows the text that was current at the end of the filter's window, in the overlay language selected on the Pages page, and lists earlier texts inside the window underneath.
  3. Which options exist at all. An option that first appeared after the window's end is not listed.

The flags, the facts and the expectations are project-level and stay the same under every filter; the dialog marks them as such.

Placeholder: screenshot of the Pages table with the small list icon next to a question name, and the mouse hovering over it with the tooltip "Structure of Q10118: answer options, rows, labels, flags and expectations"
The icon in the page name cell opens the dialog

Step by step

  1. Open the Pages page of the project and, if you want a specific view, activate a result filter and choose the overlay language.
  2. Click the list icon below the question name in the first column. A page with several questions shows one icon per question, each with the question's name.
  3. Read the filter note first so that the selection counts and labels are read in the right context.
  4. Check the options. Greyed-out rows are known but were not selected in these runs; a changed label shows its earlier texts; the flags tell you what SurveyTester will do with the option when it answers the survey.
  5. Act elsewhere. The dialog is read-only. Overrides of the exclusive flag are made in the test case editor, expectations in the expectations dialog of the Expectations column, and screenout markers come from the survey system or the questionnaire document.

Good to know

  • Several pages, one option list. When the same question was detected on more than one page, the option row says on how many pages it was detected and uses the earliest detection date.
  • Grids. Rows are listed with the sub question SurveyTester created for each of them; the selection count of a row counts the runs that answered any cell of that row.
  • Selected is not shown. The dialog does not count how often an option was on screen; that evidence lives in the stored page captures and is only evaluated by the rotation and item exposure scans.
  • No label recorded means the survey never showed a text for the option in the selected language inside the window, for example when the project was only tested in another language.