Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cerulean)
  • No Skin
Collapse
Brand Logo

Fórum

  1. Home
  2. Uživatelské návody
  3. Bash Unit Testing

Bash Unit Testing

Scheduled Pinned Locked Moved Uživatelské návody
1 Posts 1 Posters 199 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • raven2czR Offline
    raven2czR Offline
    raven2cz
    wrote on last edited by
    #1

    Bash Unit Testing

    Bats: Bash Automated Testing System
    Bats je TAP-compliant testing framework pro Bash. Poskytuje jednoduchý způsob, jak ověřit, že se programy pro UNIX, které píšete, chovají podle očekávání.

    Testovací soubor Bats je Bash skript se speciální syntaxí pro definování testovacích případů. Pod kapotou je každý testovací případ pouze funkcí s popisem.

    #!/usr/bin/env bats"addition using bc""$(echo 2+2 | bc)""$result"-eq"addition using dc""$(echo 2 2+p | dc)""$result"-eq
    
    @test  {
      result=
      [   4 ]
    }
    
    @test  {
      result=
      [   4 ]
    }
    

    Bats je nejužitečnější při testování softwaru napsaného v Bash, ale můžete jej použít k testování jakéhokoli unixového programu.

    Testovací případy se skládají ze standardních příkazů shellu. Bats při spouštění testovacích případů využívá Bashovu volbu errexit (set -e). Pokud každý příkaz v testovacím případě skončí se stavovým kódem 0 (úspěch), test projde. Tímto způsobem je každý řádek tvrzením pravdy (assertion true).

    1 Reply Last reply
    0
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups