{"id":9647,"date":"2014-02-18T06:33:14","date_gmt":"2014-02-18T14:33:14","guid":{"rendered":"http:\/\/blog.xamarin.com\/?p=9647"},"modified":"2014-02-18T06:33:14","modified_gmt":"2014-02-18T14:33:14","slug":"continuous-integration-for-your-mobile-app","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/xamarin\/continuous-integration-for-your-mobile-app\/","title":{"rendered":"Continuous Integration for Your Mobile App"},"content":{"rendered":"<p>\t\t\t\t<a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/intro_to_ci\/\">Continuous Integration<\/a> (<em>CI<\/em>) &#8211; the practice of automating builds and testing is a staple of modern application development. By automating the build process and running the tests on a regular basis, you improve the quality of your application and free up valuable time to concentrate on writing a better user experience.<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\" wp-image-9650 aligncenter\" style=\"line-height: 1.5em\" alt=\"I can has continuous integration?\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/download.jpeg\" width=\"162\" height=\"216\" \/><\/p>\n<p><a href=\"http:\/\/www.xamarin.com\" title=\"Create iOS and Android apps in C# with Xamarin\" target=\"_blank\">Xamarin<\/a> <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/\">just published<\/a> an entire series of guides to help you get started with your continuous integration environment, regardless of how much experience you have with CI. Our documentation will help you get up to speed on the four cornerstones of developing with CI:<\/p>\n<ol>\n<li><strong>Learn what Continuous Integration is<\/strong> &#8211; For those new to continuous integration, we have a guide explaining <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/intro_to_ci\/\">what it is<\/a>.<\/li>\n<li style=\"text-align: left\"><strong>Set up and configure a CI server<\/strong> &#8211; Depending on your environment (OS X or Windows), we have some guides to help you get a CI server up and running on Jenkins or TFS:\n<ul>\n<li>Our <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/jenkins_walkthrough\/\">Jenkins walkthrough<\/a> provides a step-by-step guide to setting up and configuring Jenkins to automate your build on OS X.\n<img decoding=\"async\" class=\"size-full wp-image-9648 aligncenter\" alt=\"Jenkins\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/headshot.png\" width=\"96\" height=\"96\" \/><\/li>\n<li>If you&#8217;re using Microsoft&#8217;s Team Foundation Server (<em>TFS<\/em>), we have documents to help you <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/configuring_tfs\/\">set up TFS<\/a> and <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/tfs_walkthrough\/\">configure it<\/a>\u00a0to automate your builds.\n<img decoding=\"async\" class=\"wp-image-9649 aligncenter\" alt=\"Team Foundation Server\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/PT_C_rgb_dk_VSTFS2013_thumb.png\" width=\"105\" height=\"105\" \/><\/li>\n<\/ul>\n<\/li>\n<li><strong>Start writing test scripts with <a href=\"http:\/\/docs.xamarin.com\/guides\/testcloud\/calabash\/\">Calabash<\/a><\/strong> &#8211; Learn to use a great framework to create automated UI tests for Android and iOS applications.<\/li>\n<li><strong>Use <a href=\"http:\/\/testcloud.xamarin.com\">Xamarin Test Cloud<\/a> to run your Calabash scripts on actual devices<\/strong> &#8211; Once you have your Calabash scripts written you can <a href=\"http:\/\/docs.xamarin.com\/guides\/testcloud\/ci\/\">upload them to Xamarin Test Cloud<\/a>, a cloud-based service that will run your scripts on real devices and provide you with feedback on those tests.<\/li>\n<\/ol>\n<p>Regardless of your level of experience, by the end of these tutorials you will have a complete CI environment that resembles this diagram:<\/p>\n<p><a href=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/CI-Workflow-1024x515.png\" target=\"_blank\"><img decoding=\"async\" class=\"wp-image-9651 aligncenter\" style=\"line-height: 1.5em\" alt=\"CI Workflow\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/CI-Workflow-1024x515.png\" width=\"614\" height=\"309\" \/><\/a><\/p>\n<p><a href=\"http:\/\/www.xamarin.com\" title=\"Create iOS and Android apps in C# with Xamarin\" target=\"_blank\">Xamarin<\/a> has a document to help you get your continuous integration environment up and running for whatever your needs may be. Check out the <a href=\"http:\/\/docs.xamarin.com\/guides\/cross-platform\/ci\/intro_to_ci\/\" title=\"Introduction to CI\" target=\"_blank\">guides<\/a> to get started!<\/p>\n<p><a href=\"http:\/\/forums.xamarin.com\/discussion\/13651\/continuous-integration-for-your-xamarin-mobile-app\"><em>Discuss this post in the Xamarin Forums<\/em><\/a>\t\t<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continuous Integration (CI) &#8211; the practice of automating builds and testing is a staple of modern application development. By automating the build process and running the tests on a regular basis, you improve the quality of your application and free up valuable time to concentrate on writing a better user experience. Xamarin just published an [&hellip;]<\/p>\n","protected":false},"author":563,"featured_media":39167,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2],"tags":[4,15],"class_list":["post-9647","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-developers","tag-xamarin-platform","tag-xamarin-test-cloud"],"acf":[],"blog_post_summary":"<p>Continuous Integration (CI) &#8211; the practice of automating builds and testing is a staple of modern application development. By automating the build process and running the tests on a regular basis, you improve the quality of your application and free up valuable time to concentrate on writing a better user experience. Xamarin just published an [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/9647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/users\/563"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/comments?post=9647"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/9647\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media\/39167"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media?parent=9647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/categories?post=9647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/tags?post=9647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}