Code Monkey home page Code Monkey logo

go-unit-test's Introduction

Unit Test

  • Unit test fokus menguji bagian kode program terkecil, biasanya menguci sebuah method
  • Unit test biasanya dibuat kecil dan cepat, oleh karena itu biasanya kadang kode unit test lebih banyak dari kode program aslinya, karena semua skenario pengujian akan dicoba untuk unit test
  • Unit test baisanya digunakan sebagai cara cepat untuk meningkatkan kualitas kode program kita

Testing Package

  • Di bahasa pemograman lain, biasanya untuk implementasi unit test kita butuh sebuah library atau framework khusus untuk melakukan unit test. Contoh di php menggunakan libary phpunit
  • Berbeda dengan golang, di golang unit test sudah disediakan sebuah package khusus bernama testing
  • Selain untuk menjalankan unit test, di golang juga sudah disediakan perintahnya
  • Hal ini membuat implementasi unit testing di golang sangatlah mudah dibanding dengan bahasa pemograman lainnya
  • https://golang.org/pkg/testing

testing.T

  • Golang menyediakan sebuah struct yang bernama testing.T
  • Struct ini digunakan untuk melakukan unit test di golang

testing.M

  • testing.M adalah struct yang disediakan golang untuk mengatur life cycle testing

Aturan File Unit Test

  • Golang memiliki aturan cara membuat file khusus untuk testing
  • Untuk membuat file unit test, kita harus menggunakan akhiran _test di setiap nama filenya
  • Misal kita membuat file hello_world. artinya untuk membuat unit testnya kita harus menggunakan nama file hello_world_test.go
  • Cara ini untuk penamaan lebih mudah

Aturan Function Unit Test

  • Selain aturan nama file, di golang juga sudah diatur untuk nama function unit test
  • Nama function unit test harus diawali dengan nama Test didepan nama functionnya
  • Misal kita ingin mengetes function HelloWorld, maka nama function unit testnya adalah TaestHelloWorld
  • Memiliki parameter (t *testing.T) dan tidak mengembalikan return value

Menjalankan Unit Test

  • Untuk menjalankan unit test kita bisa menggunakan perintah : go test
  • Jika kita ingin lebih detail untuk mendapatkan hasil unit testnya yang sudah di running, kita bisa gunakan perintah : go test -v
  • Jika hanya ingin memilih salah satu function saja, kita bisa gunakan perintah : go test -v -run TestNamaFuntion
  • Jika kita ingin menjalakan semua unit test dari folder utama ktia, kita bisa menggunakan perintah : go test ./...

go-unit-test's People

Contributors

zakariawahyu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.