TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

We verify the correctness of a spreadsheet engine

71 pointsby breckognize8 months ago

3 comments

gamegoblin8 months ago
I had written this comment[0] about our pattern here a few months ago and we decided to turn it into a full blog post.<p>It&#x27;s crazy how many weird bugs you can detect with such a trivial method.<p>For applications like a spreadsheet that have a million overlapping features, it&#x27;s impossible to manually write unit tests for every combination of features, so randomized tests do a lot of heavy lifting.<p>[0] <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=40876726">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=40876726</a>
评论 #41549304 未加载
Someone8 months ago
FTA: Sometimes, for the most general tests, the only invariant you can assert is that the program doesn&#x27;t crash. One of the most valuable tests we ever wrote at Row Zero is the one that just takes the top-level spreadsheet interface, and takes completely random actions on it<p>That strategy was also part of testing the original Mac. See <a href="https:&#x2F;&#x2F;www.folklore.org&#x2F;Monkey_Lives.html" rel="nofollow">https:&#x2F;&#x2F;www.folklore.org&#x2F;Monkey_Lives.html</a>.<p>As that article hunts at (“usually it didn&#x27;t run for more than 20 minutes, even if it didn&#x27;t crash, because the Monkey would invariably select the quit command”), there’s a black art in determining what “completely random” means.<p>You probably want the ability to change that depending on your testing needs. For example, if you’ve been working on the code for array formulas, the randomizer better create and edit them fairly frequently.
评论 #41558990 未加载
dgan8 months ago
&gt; &quot;Eliminate all local excel files..&quot;<p>Isn&#x27;t the ability to interact with local environment, half the reason why people use Excel in the first place?<p>Okey maybe if they connect the cloud instance to a shared drive, that could indeed replace it
评论 #41558918 未加载