Which tool can catch error inside config so it can be stopped before deployment.
Sprigsource has a tool to aid development of Spring projects . It's called SpringSource Tool Suite and this does some validations . If this is what you are looking for , you can find it Here . But it's always better to do the tests usinf Spring's testing support as #Dave recommends .
Related
I'm currently working with JBpm Kie. We have processes with custom workitem (and custom work item handlers code). We find very difficult to debug our code as our workItem handlers are mainly asynchronous and completed via REST api.
I read that workItem handlers can be provided to KIE engine through a maven repository (I'm very new to Maven). . Id' love to know if I can configure my PC as Maven repository and to debug my code as it is requested by jBpm processes. Is it possible?
Sounds like you talking about the feature to provide your own workitem repository. Which is described here in more detail: http://mswiderski.blogspot.com/2018/07/easy-workitem-installation-jbpm.html
But please note that this won‘t solve your request for debugging your workitemhandler code. This can be archived with writing Unittests (easy) or by putting them into a spring boot jbpm starter project and run it there (hard).
BTW: the last option is used by the JBPM project themself to test there Product.
Iam trying to implement static code analysis for Apache Camel not only for java but also XML based DSL.Is there any SCA Tool available?
Do you refer to the Camel routes as you want some kind of analysis of those? As Apache Camel is just regular Java code, then any regular SCA tools you can use
There is a good list on wikipedia
https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis
That said we are working on a "code/route coverage" tool that you run as part of unit tests, and then it can report which parts of your Java or XML routes have been covered or not. That work is still ongoing, you can follow the ticket:
https://issues.apache.org/jira/browse/CAMEL-8657
I believe you can certainly create a custom Sonar XPath rule using the XML plug in e.g. testing elements exist with certain attributes.
We have a number of Unit Tests written using IID for the modules we've developed. We want them to run on our CI server
We use Maven for build sand JUnit to run the tests. Is there a way to mavenise BPM tests and run them via JUnit. If no then how could we implement a build and deploy to our CI server?
Thanks
Actually, you can. Have a look at http://www.ibm.com/developerworks/bpm/bpmjournal/1412_cai/1412_cai.html .
The solution you are looking for called IBM Business Process Manager Testing Asset.
There is one clue - you have to contact IBM Software Services for WebSphere to get it.
I would like to set up an infrastructure for integration testing.
Currently we bootstrap tomcat using maven and then execute httpunit tests.
But the current solution has few drawbacks.
Any changes committed to the database need to be rollback manually in the end if the test
Running code coverage on integration test is not straight forward (we are using sonar).
My goals are:
Allow automatic rollback between tests (hopefully using String #transaction and #rollback)
Simple straight forward code coverage
Using #RunWith that will bootstrap the system from JUnit and not externally
Interacting with live servlets and javascript (I consider switching from httpuinit to selenium…)
Reasonable execution time (at least not longer than the existing execution time)
The goals above look reasonable to me and common to many Java/J2ee projects.
I was thinking to achieve those goals by using Arquillian and Arquillian Spring Framework Extension component.
See also https://github.com/arquillian/arquillian-showcase/
Does anyone have and experience with Arquillian and with Arquillian Spring Framework Extension?
Can you share issues best practices and lesson learned?
Can anyone suggest an alternative approach to the above?
I can't fully answer your question. only some tips
Regarding the automatic rollback. In my case. Using liquibase to init the test data on "hsqldb" or "h2" which could be set as in-memory pattern. Then no need to roll back.
For Arquillian. It's a good real testing approach. What i learned is that "Arauillian Spring Framework Extension" is just a extension. You have to bind to a specific container like "jboss, glasshfish,tomcat" to make the test run.
But i don't know how to apply for a spring-based javaSE program which do not need application server support.
My lesson learned is the jboss port conflict. since jboss-dist is set 8080 as default http port. But our company proxy is same as 8080. So i can't use maven to get the jboss-dist artifact.
Hope others can give more info.
I have developed a stack of web Services based on:
Spring ws 2.0 with jaxb2 maven plugin (to ease the pain).
Hibernate.
PostgResql.
We are using the following to test:
Junit test with Mockito.
Spring test for Dao & service layer.
The new Spring ws test & Smock api.
SoapUi Api for testing with their maven plugin.
We have TracWiki for the wiki side.
All is fully automated in a maven build with Hudson, even the deployment of the webapp with cargo
on distant server.
We have 5 virtual servers on a single machine on Debian (using vserver).
We don't have a single performance test and we don't have any webapp tools to monitor.
What do you recommend to go a step further?
I'm really looking for new ways and/or tools to improve everything.
Hey.
Incorporate Sonar into your builds. You will get lots of informations about your code.
I don't see you mentioning any code coverage tools. While coverage isn't everything, it can help finding the parts of your code which aren't covered by the tests (or perhaps even dead).