问题
I have an Adobe AIR app written with Robotlegs 1.5.2. The unit test framework used is FlexUnit4. I already have a Jenkins CI setup for projects written with CakePHP 2.x and unit test framework of PHPUnit. My Jenkins CI server is on Ubuntu 11.10 on Rackspace.
I intend to use the same Jenkins server for the Adobe AIR app project. I am using git and github and do not intend to switch to maven. I found this tutorial, but it looks very intimidating and it was written in 2011.
I wonder if there is another way or this is the best way to go. I want a blow by blow account of how to setup a CI on a Jenkins that also runs FlexUnit4 tests before deployment for Adobe AIR app.
The Adobe AIR app will be deployed on the server for people to download.
I prefer answers from those who have experience setting it up at least once in the past 6 months.
回答1:
This is doable, but not an easy task I think.
To execute the tests on the server, the server will need to have either flash player or adobe air installed. You can either set a slave with a GUI and configure Jenkins to run with distributed builds, or you can use xvfb.
You will need to build the AIR test runner and execute it. Although you said you don't intend to switch to Maven, I have found it to be the easiest path in getting unit tests and code coverage to work on flash. This presentation may be useful to you. It is possible to do it without maven, but you may be spending a lot of time writing the build scripts. Furthermore, I found it to be the only solution that provides coverage reports without modifying the sdk with flexcover. Check out this article.
Having Jenkins work with Git/Github is easy in comparison.
来源:https://stackoverflow.com/questions/11354827/jenkins-ci-server-setup-for-adobe-air-app-with-flexunit4-and-github-as-repo