Continuous Integration

4 min. read

Continuous-integration

Getting started with automated testing
Unit tests
are narrow in scope and typically verify the behaviour of individual methods or functions.
Integration tests
make sure that multiple components behave correctly together. This can involve several classes as well as testing the integration with other services.
Acceptance tests
Are similar to the integration tests but they focus on the business cases rather than the components themselves.
UI tests
Will make sure that the application functions correctly from a user perspective.

Getting Started with Continuous Integration (CI)

Continuous integration (CI) is a practice where a team of developers integrate their code early and often to the main branch or code repository. The goal is to reduce the risk of seeing “integration hell” by waiting for the end of a project or a sprint to merge the work of all developers.

it will save you time during your development cycle by identifying and addressing conflicts early
It’s also a great way to reduce the amount of time spent on fixing bugs and regression by putting more emphasis on having a good test suite
it helps share a better understanding of the codebase and the features that you’re developing for your customers.

Steps:
setting up automated testing.
To get the full benefits of CI, you will need to automate your tests to be able to run them for every change that is made to the main repository
We insist on running tests on every branch of your repository and not just focus on the main branch. This way you will be able to capture issues early and minimise disruptions for your team

References
https://www.atlassian.com/continuous-delivery/how-to-get-to-continuous-integration

https://www.codementor.io/jeanpauldelimat/how-to-get-started-with-continuous-integration-u1r2oz9ao?utm_content=posts&utm_source=sendgrid&utm_medium=email&utm_term=post-u1r2oz9ao&utm_campaign=newsletter20190417

Websites (Static, PHP, NodeJS, bootstrap, Angular)
Mobile apps (Ionic)
Unity apps (Mobile, WebGL, Desktop, Mac, VR, Hololens)

References
https://www.atlassian.com/continuous-delivery/how-to-get-to-continuous-integration

Visual Studio Team Services https://www.visualstudio.com/team-services/
https://www.lynda.com/Visual-Studio-tutorials/Visual-Studio-Team-Services-Basics/502662-2.html

Using Visual Studio cloud
http://ryanjsalva.com/2016/04/25/continuous-integration-for-cordova-apps.html

https://taco.visualstudio.com/en-us/docs/build_ios_cloud/

Cordova build:
https://marketplace.visualstudio.com/items?itemName=ms-vsclient.cordova-extension

Testing
http://ryanjsalva.com/2016/04/26/beta-testing-with-hockeyapp.html

Publish without resubmitting
http://ryanjsalva.com/2016/05/01/publish-without-resubmitting-to-the-app-store.html

Maintaining different configs
http://ryanjsalva.com/2016/05/07/maintaining-different-release-configurations.html

Unity Development
https://developer.cloud.unity3d.com

https://www.mountaingoatsoftware.com/blog/the-forgotten-layer-of-the-test-automation-pyramid

https://www.allankellyassociates.co.uk/archives/628/testing-triangles-pyramids-and-circles/

Continuous-integration

Websites (Static, PHP, NodeJS, bootstrap, Angular)
Mobile apps (Ionic)
Unity apps (Mobile, WebGL, Desktop, Mac, VR, Hololens)

Visual Studio Team Services https://www.visualstudio.com/team-services/
https://www.lynda.com/Visual-Studio-tutorials/Visual-Studio-Team-Services-Basics/502662-2.html

Using Visual Studio cloud
http://ryanjsalva.com/2016/04/25/continuous-integration-for-cordova-apps.html

https://taco.visualstudio.com/en-us/docs/build_ios_cloud/

Cordova build:
https://marketplace.visualstudio.com/items?itemName=ms-vsclient.cordova-extension

Testing
http://ryanjsalva.com/2016/04/26/beta-testing-with-hockeyapp.html

Publish without resubmitting
http://ryanjsalva.com/2016/05/01/publish-without-resubmitting-to-the-app-store.html

Maintaining different configs
http://ryanjsalva.com/2016/05/07/maintaining-different-release-configurations.html

Unity Development
https://developer.cloud.unity3d.com