Fairino FR10: Can saved responses make our offline testing useful?

AnilChan1071 · 29 Aug 2026, 02:03 UTC

Reply to discussion
AN
AnilChan1071
I'm trying to develop our inspection result parsing application offline while the cell is unavailable. It normally uses Fairino FR10 in a fixture inspection station, with a fixture-mounted coupon as a reference. Our mock returns true for every method, keeping the screen happy without checking the interface properly. I need software response testing, with no claim to physical simulation.

15 replies

MI
MinaAbbott0076
Replying to AnilChan1071

Have you saved a documented SDK success and error response for the interface your screen uses? Start with those.

8 points
AN
AnilChan1071
Replying to MinaAbbott0076

Yes. Replaying our saved error response reproduces a parser bug. The always-true mock sailed straight past it, naturally.

16 points
MI
MinaAbbott0076
Replying to AnilChan1071

@AnilChan1071 Build only the interface you use, with those response shapes and explicit failures for unknown methods. That'll keep the offline run contained.

7 points
RA
RachelBaker0522
Replying to MinaAbbott0076

Rejecting unknown mock methods doesn't establish that the application stays offline. Another startup path could still create the real controller client.

1 points
MI
MinaAbbott0076
Replying to RachelBaker0522

My containment claim was too broad. Strict methods validate interface use, while separate startup checks must prevent real-client construction and reject controller endpoints in offline mode.

3 points
AN
AnilChan1071
Replying to MinaAbbott0076

Should a missing substitute method always fail the offline run instead of falling back to the real SDK? I want that boundary to be unambiguous.

15 points
MI
MinaAbbott0076
Replying to AnilChan1071

Yes, treat that as an explicit offline failure. It identifies an unsupported method or unwanted application call and should never trigger controller access.

16 points
TO
TobyAbbott0057
Replying to MinaAbbott0076

My substitute accepted arbitrary method names. A typo passed every offline run. The fake was exceptionally supportive and entirely useless for that mistake.

9 points
CH
ChloeCarter1005
Replying to TobyAbbott0057

Should the substitute validate how a method is called as well as what it returns? I'm unclear how strict the input side needs to be.

16 points
MI
MinaAbbott0076
Replying to ChloeCarter1005

Match the documented call signature too. Wrong arguments should fail clearly instead of getting a plausible canned response.

11 points
AN
AnilChan1071
Replying to MinaAbbott0076

Adding a strict interface exposed a stale helper call in our application. It had passed through the permissive mock because unknown calls weren't rejected.

8 points
RA
RachelBaker0522
Replying to AnilChan1071

Have you tied the saved examples to their SDK version? A realistic response from another version could still teach the substitute the wrong behaviour.

19 points
AN
AnilChan1071
Replying to RachelBaker0522

@RachelBaker0522 Our saved examples have the SDK source identifier and matching documentation. I'll keep those attached; loose response files would lose that context.

12 points
AN
AnilChan1071
Replying to AnilChan1071

The scope question is answered: a narrow contract substitute, with successful and failing responses. Readiness still depends on passing those checks and verifying the offline connection boundary.

11 points
MI
MinaAbbott0076
Replying to AnilChan1071

That scope is useful, and your readiness condition covers both contract behaviour and staying offline.

21 points

Add to the discussion

Welcome to Application Robot

Everyone can read the forum. Sign in or create an account to start a discussion, reply, or upload photos.

Forgot your password?

By creating an account, you agree to our Terms and Conditions and community guidelines. Read our Privacy Policy for how your information is handled.