Test Your Code - 2022 Edition with Michael Baas

olh o 2022 n.w
1 / 14
Embed
Share

Explore the importance of testing code, from motivation to practical tips. Learn about unit testing, integration testing, and automation techniques. Discover tools and strategies for ensuring code quality and reliability.

  • Code Testing
  • Automation
  • Unit Testing
  • Integration Testing
  • Software Development

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Olho 2022 Test your Code! Michael Baas

  2. Info everything I will be showing runs on 18.2 though the DTest changes are too substantial to patch the current 18.2 so it will be released with v19. DTest => DBuildTest But DTest as well a CITA are also available on http://github.com/Dyalog Questions at the end Test Your Code! 1

  3. Agenda Motivation What to test Testing & dog show Test Your Code! 2

  4. Motivation Research "Errare Humanum est" Seneca, 62 "Anything that can go wrong will go wrong [at the worst possible moment]." Murphy's Law or "Finagle's Law of Dynamic Negatives", 1970s; also: Sod's Law "Shit happens" Forrest Gump, 1994 "We all know our code doesn't fail." Brian Becker, 2022 and experience make it obvious that software needs to be tested before leaving the house! Test Your Code! 3

  5. What to do for in-depth info: ask Aaron! Unit testing: verify the functionality of a specific section of code (typically: a function) can / should include coverage analysis using a more relaxed interpretation of "unit" Integration testing UI testing W-Interfaces Browsers / HtmlRenderer: Selenium Test Your Code! 4

  6. How to do? Unit testing R foo X useless code :If ~2|X R X+1 :ElseIf X>10 R 10|X :Else :Select X :Case 2 :Case 3 R 'Wow..', X :Else R 0 :EndSelect :EndIf Test Your Code! 5

  7. Go Pro reproduceable automate testing execute against variety of inputs ensure that all paths are taken Code Coverage check results Test Your Code! 6

  8. ]demo Test Your Code! 7

  9. Multidimensional testing Many platforms (AIX, Mac, pi, Windows, Linux) Single platform New dog, Old dog old tricks .dyalogtest, .aplf, "Current" interpreter "Solo" New dog ]DTest .apln, .aplc, .dws New dog, new tricks ExecuteLocalTest Many CITA Jenkins interpreters / versions CITA=Continous Integration & Testing in APL Test Your Code! 8

  10. Running a test Test Your Code! 9

  11. Result Test Your Code! 10

  12. and for further processing: Test Your Code! 11

  13. When to test? CITA Continously! Almost At least on every commit! You may want to test locally before committing Test Your Code! 12

  14. Not one man in a garage Adam: APLCart, UCMDs Andy & Jason: scripting & Jenkins knowledge Brian: HttpCommand, Jarvis Bjorn: Conga, Cryptographic Library Morten: initiator Richard: regex, startup Vince: support, APLCORE analysis and more... Test Your Code! 13

More Related Content