crowdsourced conformance testing via remote sandboxing
play

Crowdsourced Conformance Testing via Remote Sandboxing Joe Gibbs - PowerPoint PPT Presentation

Crowdsourced Conformance Testing via Remote Sandboxing Joe Gibbs Politz http://www.batchgeo.com Remote Sandboxing? Students' interpreters g r a d e . r k t 1 6 0 0 t i m e s ? Students' interpreters g r a d e


  1. Crowdsourced Conformance Testing via Remote Sandboxing Joe Gibbs Politz

  2. http://www.batchgeo.com

  3. “Remote Sandboxing?”

  4. Students' interpreters g r a d e . r k t 1 6 0 0 t i m e s ?

  5. Students' interpreters g r a d e . r k t

  6. # l a n g r a c k e t / b a s e ( r e q u i r e ' i n t e r p . r k t ' ) ( c o m m a n d - l i n e “ - - t e s t ” t e s t - d i r ( r u n - t e s t s i n t e r p t e s t - d i r ) )

  7. # l a n g r a c k e t / b a s e ( r e q u i r e ' i n t e r p . r k t ' ) ( c o m m a n d - l i n e “ - - t e s t ” t e s t - d i r ( r u n - t e s t s i n t e r p t e s t - d i r ) “ - - r e p o r t ” ( s i g n ( r u n - t e s t s i n t e r p o u r - t e s t s ) “ s o o p e r - s e e k r e t ” ) )

  8. # l a n g r a c k e t / b a s e ( d e f i n e i n t e r p ( d y n a m i c - r e q u i r e “ i n t e r p . r k t ” ' i n t e r p ) ) ( c o m m a n d - l i n e “ - - t e s t ” t e s t - d i r ( r u n - t e s t s i n t e r p t e s t - d i r ) “ - - r e p o r t ” ( s i g n ( r u n - t e s t s i n t e r p o u r - t e s t s ) “ s o o p e r - s e e k r e t ” ) )

  9. Students' interpreters g r a d e . b i n 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 Remote Sandboxing

  10. “Crowdsouced Conformance Testing”?

  11. ParselTongue Testing Assignment • tests/ • loop-tests/ correct-interp ✓ • for-test1.psl • for-test2.psl ✓ for-update-after-test • operator-tests/ • subtract-test1.psl ✓ plus-coerces-strings • subtract-test2.psl • add-test1.psl arity-before-evaluate • function-tests/ • apply1.psl discard-if-effects • apply2.psl . • closure1.psl • closure2.psl . .

  12. > 10,000 tests from 250 people That's as many tests as JavaScript's conformance suite. Crowdsourced Conformance Testing

  13. Lessons ● Racket's dynamic code support is awesome, and Racket's build tools for distribution just work ● Value proposition for teaching PL online – get crowdsourced tools and tests

Recommend


More recommend