Sapior LogoSapior

OnVUE Raw CSS Bug: Why the Real Exam Showed a Stylesheet Instead of the UI

OnVUE candidates have reported the live exam launching into raw CSS or an unstyled shell while the pre-exam system test stayed clean. This production-only asset failure is a delivery problem, not a CSS problem.

Somewhere between the schedule page and the first question, the polished OnVUE exam shell disappeared. In its place: a wall of raw CSS, an unstyled screen, or a stylesheet response rendered as content. The candidate had passed the system test minutes earlier. That specific contrast—system test clean, real exam broken—is the most important clue.

The failure signature

User reports describe a production-only UI failure in Pearson VUE’s OnVUE remote proctoring environment. The candidate launches the real exam, the secure browser starts, and instead of the normal exam shell, the UI is replaced by raw stylesheet text or rendered as an unstyled page. The pre-exam system test often completes without error because it does not exercise the exact production asset path used during a live proctoring session.

What OnVUE is

OnVUE is Pearson VUE’s online proctoring platform for certification exams. It uses a controlled web application to deliver exam content, manage proctor chat, and enforce security through video/audio recording and system checks. The pre-exam system test validates camera, microphone, network, and basic app startup. It is not a full production smoke test of every asset served during an actual exam.

Why it happens only in the real exam

**Release channel mismatch:** the system test may load from a stable or staged endpoint, while the real exam resolves to a production endpoint with a different CSS bundle.

**CDN cache invalidation:** hashed CSS filenames change at deploy, but cached HTML may still reference an old or missing stylesheet, or a cache node can serve the CSS with the wrong content type.

**Wrong MIME type:** if CSS is served as `text/plain` or an error page returns `text/html`, the browser may not apply it. In a high-stakes exam shell, the result can look like raw CSS instead of a rendered UI.

**Production-only feature gates:** the real exam may request additional proctoring or lockdown CSS that the system test never downloads. If that production-only asset fails, the whole shell can degrade.

When a browser displays the contents of a stylesheet as plain text, the typical cause is a response header problem such as `Content-Type`, not the CSS file itself. The CSS may be valid, but the browser treats it as a document or plain text rather than a stylesheet.

What engineering teams should check

1. Capture the network response

Compare the system test HAR file to the real exam HAR file. Look for differences in requested CSS URLs, response status, and `Content-Type`. A single 200 response with the wrong MIME type can produce this behavior.

2. Treat the system test as production

Run the system test against the exact production URL and release channel that the live exam uses. Do not rely on a staged self-test if the real launch path is different.

3. Fail closed on critical CSS

For high-stakes applications, do not proceed into the exam if the main stylesheet is missing or invalid. Add a lightweight runtime check that verifies `document.styleSheets` or confirms that critical CSS has been applied before showing exam content.

4. Verify CDN and immutable assets

Use hashed filenames such as `app-1e5bff.css` and serve them with immutable cache headers. After deploy, purge the CDN and run automated checks against the production asset URL to confirm that the correct `Content-Type: text/css` header is present.

What OnVUE candidates can do

If you see raw CSS at exam launch, keep the session open and contact the proctor through the chat or Pearson VUE support. Note the exact time, take a screenshot if permitted, and ask whether you can restart OnVUE. Do not attempt to edit files or use developer tools; the proctoring software may flag that activity. A raw CSS screen is typically an asset delivery failure, not a sign that your exam content is invalid.

The bigger takeaway

Production-only CSS failures are usually not about CSS itself. They are about delivery: wrong environment, wrong response headers, or a cache that did not clear. OnVUE’s bug is a useful reminder for any team that runs last-mile checks in one environment but ships candidates through another. If the real path is not production-like, the system test is only a ceremony.

OnVUE Raw CSS Bug: Why the Real Exam UI Breaks Only in Production