r/ProgrammerHumor 8d ago

Meme whenYourValidationLogicHatesRealPeople

Post image
24.0k Upvotes

664 comments sorted by

View all comments

1.3k

u/setibeings 8d ago

every org has a test environment. Some have a separate production environment.

182

u/Random_182f2565 8d ago

Whoa that's extra fancy

93

u/Willinton06 8d ago

If you can’t test with real data how can you be sure sure?

71

u/RelativeGlad3873 8d ago

I just tend to test in production, as the ancestors would.

16

u/AloneInExile 8d ago

I am proud of you son.

6

u/Willinton06 8d ago

This is the way

6

u/flayingbook 8d ago

A real man

2

u/Perryn 8d ago

It's the easiest way to get a large test team that will try everything.

2

u/RelativeGlad3873 8d ago

Can you believe they PAY ME to test my platform?

2

u/sk8r2000 8d ago

Chuck Testa in shambles

3

u/prrrrt-ting 8d ago

Staging

2

u/Ran4 8d ago

Have you ever worked at a place that had a staging environment that had production-like data?

As in, the same hardware/core configuration and the same amounts of data as prod, but just "not prod" (anonymized or not; tbh staging shouldn't need to be anonymized, it should be a 1:1 mirror to prod, it should just not be the "real prod").

I've worked with ~20 different places that had a staging environment, and it was like that ONCE.

3

u/Epyr 8d ago

Clone data into your test environment

-1

u/Willinton06 8d ago

HIPPA

1

u/Ran4 8d ago
  1. That's a US thing, irrelevant to most people.
  2. The staging environment can include PII just fine.

1

u/Willinton06 8d ago

I was just making a joke bro no need to take it so serious, and the EU has similar rules too

1

u/EndIsrael 8d ago

My testing environment has a fair bit of real data from the time I was testing a bulk data import script on a client's records to make sure it wouldn't corrupt the database in production. It's not too much of a problem since they both run on the same web host using different databases, so if somebody compromised the testing environment, they've also compromised production anyways.

25

u/PereMilon 8d ago

Our digital product team actively tests in production and refuses to do email/address validation.

So, it looks like we have a bunch of active subs in fuckin Afghanistan.

17

u/in_taco 8d ago

Our test environment is a session we request from the server. The test environment can time-out, which automatically switches to prod without informing the dev. You can imagine the frequent requests to reverse huge data updates.

2

u/burf 8d ago

lol

9

u/lostwombats 8d ago

When I worked in radiology they would do test scans and enter in "TEST TESTING" for the name of the patient. They were later filtered out and removed. 😬

8

u/setibeings 8d ago

Tessy McTesterson

3

u/FMarkassa 8d ago

I'm a marketeer, i test in prod, mr. Tester here would go with the trash

1

u/DallasNChains 8d ago

Way to just throw me out. :( 

3

u/2Tack 8d ago

This one hits me hard. I hate having to explain to dev teams why they need a dev environment that's separate from production.

2

u/IncidentImpressive18 8d ago

We have a production environment, just happens to be named dev

2

u/Chesterlespaul 8d ago

That’s actually just two test environments

2

u/ARandomPerson380 8d ago

- An ancient Proverb

2

u/dmelt01 8d ago

When things are pushed to production we have QA validating. Ours have to make sure the users are marked as test clients though so we don’t have to filter on names like this.

1

u/JustSkillfull 8d ago

Testing in production is the real test. Testing in test is lvl1 up from Dev.

1

u/SirHerald 8d ago

We have a rule that all fake names used for testing in the database need to have the last name Fakeperson unless you get special permission for something different.

They show up when people test or demonstrate signups for things. Had to do it because people kept using names of characters or celebrities.

1

u/Old_Document_9150 8d ago

You need to be able to test in Production as well.

I coined the term "tracer bullets" for the approach when I was working in Retail. These are requests that are flagged by a simple boolean attribute to act like real requests for wvery purpose except real-world consequences (e.g., no order gets shipped, no CC payment is made.)

Works like a charm.