Do you mean Ab Intio? BTW, it’s Jenkins, not Jenkin.
The procurement cost of Jenkins is zero. Just go to http://www.jenkins-ci.org and download. Cloudbees will sell you an enterprise edition with extra plugins and a support contract, or sell you a service where you run Jenkins on their cloud. I’d start with the free copy to see if it even meets your needs, then consider the possibility of going to Cloudbees (Truth in advertising: my company just bought their enterprise edition for the support contract).
I have found nothing that specifically connects Jenkins to Ab Inito, Jenkins can run with a bunch of different tools because it supports running tasks as Windows batch scripts or Unix shell scripts. This is how it connects to all but a few general development tools.
While Jenkins is useful for automating running of tests, I don’t think that it directly supports the sorts of tests that you show below. There are plugins to read *Unit style logs, or to read certain patterns (such as “TEST PASSED” or “TEST FAILED”) as pass/fail criteria, but doesn’t have the logic to compare results. Basically, you would have to write the tests yourself, generate simple pass-or-fail strings, and have Jenkins parse the logs for those pass-or-fail strings. The nice thing about Jenkins is that it will do so unattended, either on a schedule or whenever you submit a change to your source control system.
--Rob
--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
jenkinsci-use...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
All I know about Abinitio is what I got in five minutes of web searching, so I can’t help you much there. Wikipedia says that Abinitio graphs compile down into Korn shell scripts or Windows Batch files, either of which Jenkins can run out of the box. You can set Jenkins to poll your source control system every few minutes, and run builds when somebody checks in a change.
If you need Jenkins to compile Abinitio, I don’t know how to do that—if there is a command-line tool that will do that, Jenkins can run it. If you need to test Abinitio graphs after you compile them, you’ll have to write or otherwise get a test harness for it in such a way that it produces “test passed” and “test failed” strings that Jenkins can parse. Jenkins is not a test harness itself, but it can run them.
I don’t know Cloudbees’ support pricing structure, but I do know that it depends on the number of executors that you set up on your Jenkins server. Very roughly speaking, an executor is the ability to do one thing at a time, so if you need to run ten builds at once, you need ten executors. But I wouldn’t worry about Cloudbees support until you try the free version out. Download a copy of jenkins.war, run “java –jar Jenkins.war”, and it’ll show up on port 8080 on the machine you run it on. Point a browser at it and start playing.
In short: if you need to automate running a test harness, Jenkins can help you. If you need a test harness, Jenkins doesn’t provide that. Figure out your test harness some other way, and then Jenkins can run that for you.
| Compare input and output record counts Compare input values and output values Validates transformations Compares checksums created against the input and output (e.g. The sum of input column 1 = sum of output column 1) Compare input with a filter record count with output record count Supports files and tables as either the input or output (File to Table, Table to Table, Table to File) Supports the validation of a test against a static value, e.g. Sum of column 1 = value x |
|
Supports embedded SQL to use for the validation routine, e.g. Output of SQL 1 is equal to the output of SQL 2 or Output of SQL 1 is equal to this expected value |
|
|
| Compares checksums created against the input and output |
| Compare input with a filter record count with output record count |
| Supports files and tables as either the input or output (File to Table, Table to Table, Table to File) |
| Supports the validation of a test against a static value, e.g. Sum of column 1 = value x |
| Supports embedded SQL to use for the validation routine |
The high level requirements you are giving (compare record counts, run two SQL commands and compare the results, compare test results from static values) are requirements for a test harness, not a continuous integration server. If you don’t have a test harness, Jenkins cannot help you. If you have a test harness, Jenkins can run it for you whenever somebody checks a change in to your source control.
If you have:
1: A source control system supported by Jenkins
2: A command-line build process to create your program (I believe they’re called “Graphs” in Ab Initio)
3: A command-line test harness that Jenkins understands (there are plugins for several, and the Build Log Parser plugin can be used to read results like “TEST PASSED” and “TEST FAILED”)
Then a release engineer can make something demoable in a matter of days, not weeks. Basically, they’ll be able to get Jenkins to poll the source control system every n minutes, and when something changes, it can check out your code, run your command-line-based build procedure and then your test harness.
If you’re asking for a tool that will compare record counts, expected vs. actual results, or SQL validation, you need a test harness, and Jenkins is not a test harness. Jenkins runs test harnesses for a living, but you need such a harness first.
--Rob
From: jenkins...@googlegroups.com [mailto:jenkins...@googlegroups.com]
On Behalf Of avineet gupta
Sent: Tuesday, April 30, 2013 6:27 AM
To: jenkins...@googlegroups.com
Subject: Re: Questions on Jenkin
Just to elaborate in details:
You can see the whole list of plugins at https://wiki.jenkins-ci.org/display/JENKINS/plugins. While there are over 20 source code management plugins alone, none of them appear to be for EME. That being said, there are some other ways to trigger builds.
1: You can trigger a job to launch at certain times, such as “every five minutes”. If that job can ask EME if the source has changed, it can then launch your actual build and test cycle.
2: The “File System SCM” and “URL SCM” plugins (there are several URL plugins, actually) allow you to poll certain files in a file system or the contents of a Web page every few minutes. If you can get EME to even change the timestamp on a file somewhere whenever it receives new code, for instance, the File System SCM can detect that and use it to trigger new builds.