Continuous Integration

Continuous Integration (CI)


Yesterday (Dec 3rd, 2016), I’ve a day trip to Kempas, Johor to attend to a monthly event by JomWeb Johor, listening to a talk on Continuous Integration by Kamal Mustafa.

Here the summary from the talk and definitely I need a look into test the application cycle before release it – which usually I don’t.  ^_^

Development without Continuous Integration:

  1. Hard to track down the bugs
  2. Infrequent Commits
  3. Difficult Integration
  4. Infrequent Release
  5. Testing Happens Late

CI Tools / Software

  1. Travis
  2. Jenkins
  3. Gitlab
  4. BitBucket

Travis is an online service to provide the CI process while Jenkins is desktop application.

While Gitlab and BitBucket, both are Git Platform but providing a tool named Pipelines which enabled developers to do the CI process.

Notes on Test

  1. End-to-end testing
  2. Transaction, Non-transaction
  3. Unit Test – doesn’t mean require a database for testing
  4. Always drop the test database after testing
  5. Alway automate the test
  6. Code Linting
  7. Deployment test can be on local, staging or  production.