Ask HN: Do you test in production?
11–20 of 75 posts
Re: Ask HN: Do you test in production?
#12Another variation on the same theme is rewriting systems when you run production data through both systems. Quite often that's the only way of doin migrations to a new platform, or a new database, or yes, a newly re-written system.
> Is it common practice to inject fabricated data into a prod system to run such tests? What's the best practice or prior art on doing this well?
A very common practice is to run a snapshot of prod data (e.g. last hour, or last 24 hours, or even a week/month/year) through a system in staging (or cooking, or pre-cooking, or whatever name you give the system that's just about to be released). However, doing it properly may not be easy, and depends on the systems involved.
Re: Ask HN: Do you test in production?
#13Performance testing needs a schedule, visibility, timebox, known scope, backout plan, data revert plan, pre- and post-graphs.
Schedule. Folks are clearly tagged in a
table with times down the side.
Visibility. Folks who should know know
when it's going to happen,
are invited to the session,
and are mentioned in the
distributed schedule.
Timebox. It's going to start at a
defined time and end on a
defined time.
Known scope. Is it going to fulfill an
order? How many accounts
created?
Backout plan. DBA and DevOps on standby
for stopping the test.
Data revert plan. We know what rows to
delete or update after
testing.
Pretty pictures. You want to show graphs
during the test, so
that you know what to
improve and everyone's
time wasn't wasted.
Reference: observing successful runs that didn't result in problems later.Re: Ask HN: Do you test in production?
#14Anytime you need to talk to a third party API, you need to test in prod. Some people have sandbox apis. They are generally broken and not worth it. See eBay for super in depth sandbox API that never works. You can read the docs 100 times over. At the end of the day, the API is going to work like it works. So you kind of “have to” test in prod for these guys.
Re: Ask HN: Do you test in production?
#15I work for a B2E company that has a structure similar to Salesforce. We test in production all the time even for our secure environments where the data is highly sensitive. Re: data, it’s a somewhat common practice to notionalize data (think isomorphically faking data). We regularly do this and will often designate rows as notional to hide them from users who aren’t admins. I’ve found this to work exceptionally well;…
Can you give a bit more colour on "notionalizing" and "isomorphically faking" please.
Re: Ask HN: Do you test in production?
#16I work for a B2E company that has a structure similar to Salesforce. We test in production all the time even for our secure environments where the data is highly sensitive. Re: data, it’s a somewhat common practice to notionalize data (think isomorphically faking data). We regularly do this and will often designate rows as notional to hide them from users who aren’t admins. I’ve found this to work exceptionally well;…
Are these just $5 words for setting a fake data flag on the records?
Re: Ask HN: Do you test in production?
#17Re: Ask HN: Do you test in production?
#18I work for a B2E company that has a structure similar to Salesforce. We test in production all the time even for our secure environments where the data is highly sensitive. Re: data, it’s a somewhat common practice to notionalize data (think isomorphically faking data). We regularly do this and will often designate rows as notional to hide them from users who aren’t admins. I’ve found this to work exceptionally well;…
>notionalize data (think isomorphically faking data) Are these just $5 words for setting a fake data flag on the records?
Re: Ask HN: Do you test in production?
#19Re: Ask HN: Do you test in production?
#20Earlier quoted context omitted.
>notionalize data (think isomorphically faking data) Are these just $5 words for setting a fake data flag on the records?
We do that too but notionalizing for us is usually creating data that looks and behaves realistically but is actually fake. (A side benefit to this is that we can then use it for demos!)