Hi all,
- I changed the tool named as "org.wso2.carbon.automation.tools" and moved to new git-hub repository from old one. i add some modification and new keywords to support translating esb sample test cases. Tool is available with these new changes on my new repository [1]. - Also I translated the Sample test cases in the product-ESB into robot test script using my tool. This product-esb test module is also available in my repository [2]. It contain converted sample test cases of product-esb. Also it contain some test cases to demonstrate some capability and features of my tools. [1] https://github.com/ruks/org.wso2.carbon.automation.tools [2] https://github.com/ruks/Automated-test-case-generation-tool-sample-robot-test Thanks and regards. On Sun, Jul 27, 2014 at 11:54 PM, Rukshan Chathuranga <[email protected] > wrote: > Hi all, > > Thanks Malintha for the feedback. > > > - ServiceName....., OperationValue.. keywords are my own generated > keyword and not robot framework keywords. I don't think that > robot framework have this kind of application specific keywords. Thus user > will realize that these are import from external library. But since it is > required to user understand the keyword, i hopes to add some Documentation > about these keywords. > - Also i implementing the test module for product-esb by translating > sample test cases into robot framework test cases. that project is > available on the git-hub repository [1]. > > [1] > https://github.com/ruks/Automated-test-case-generation-tool-sample-robot-test > > > Thanks and regards. > > > On Sun, Jul 27, 2014 at 8:15 PM, Malintha Adikari <[email protected]> > wrote: > >> >> >> >> On Sun, Jul 27, 2014 at 12:46 AM, Rukshan Chathuranga < >> [email protected]> wrote: >> >>> Hi all, >>> >>> >>> - I started to translate test-cases written for ESB-product to robot >>> test script, a as separate test module to the ESB using my tool. But i >>> faced several issues when translate them, because of ESB use different >>> service and its responses are different formats. Those are noted here. >>> - Since we can invoke services operation by providing different >>> information like service name, operation, parameters, data etc. user get >>> confuse selecting correct keyword. When translating test cases i realized >>> that when use command to invoke operations user have to provide many >>> information. Thus this can be complex to user to understand it. Thus to >>> overcome the complexity and provide the readability i implement new >>> keywords to specify those details one by one rather than in a line. >>> - Below are the command used for invoke service operations, >>> >>> >>> 1) >>> echo Payload Test >>> invoke Operation In echo echoString in HelloWorld #invoke operation >>> Assert InvokeOperation HelloWorld #assert output >>> invoke Operation In echo echoInt in 123 >>> Assert InvokeOperation 123 >>> ${out} invoke Operation In echo echoStringArrays a AA b BB c 11 >>> Log ${out} >>> >>> >>> These blue lines are the command for invoke operations. for command we >>> have to provide the service name, operation and parameters. This keyword >>> can be use if the response is basic string or array types. >>> >>> 2) >>> Test Sample >>> get Attibute Value Of OperationIn quote getQuote last symbol wso2 >>> Assert GetAttibuteValueOfOperationIn Fault: response message 'last' >>> price null >>> >>> Here this blue color line is also used to invoke operations. user have >>> to used this kind of keyword if response is bit complex. this kind of >>> response can be get from the stockQuoteService. Because user may >>> interested the one attribute of the response. here "last" is the >>> such a attribute of the response. Thus when this kind of response is >>> required, this command get bit complex. Thus i introduce the another way to >>> invoke operations. >>> >>> 3) >>> Test Sample >>> set ServiceName quote >>> set ServiceOperation getQuote >>> set ServiceParentChild request >>> set ServiceParas symbol wso2 >>> ${o}= InvokeOperation >>> assertNotNull ${o} >>> ${la}= get OperationValue last >>> assertNotNull ${la} >>> >> >> +1 for 3 approach. this approach reduces the complexity of dealing with >> the requests ans responses. BTW, I have a problem related to some keywords >> you have used ( ServiceName....., OperationValue..). Are these keywords >> your own keyworks or kind of default keywords. If these are your own >> keywords , how do we instruct users to use those keywords in the test >> scripts ? >> >>> >>> This is the alternative and best way of invoke operations. here details >>> are provided as step by step. then it improve the readability. Also with >>> this user can invoke operation easily that accept no of parameters. >>> >>> >>> - These are the 3 methods that can be used to invoke operations. But >>> i like to know which way is prefer for this tools. can we use all this or >>> just use one way to handle every operations? Also i like to know whether >>> there is any other solutions. >>> - Also there is some difficulties when understanding the >>> SimpleStockQuote based test cases written in ESB product test. Thus, can >>> we >>> have a time to discuss about these things. >>> - Also i hope write some documents to provide details of how to >>> write test case using this tool. So i hope to work on it after clear >>> these >>> issues. >>> >>> >>> Thanks and regards. >>> >> >> Regards, >> Malintha Adikari >> >>> >>> >>> On Sun, Jul 13, 2014 at 9:21 PM, Rukshan Chathuranga < >>> [email protected]> wrote: >>> >>>> Hi All, >>>> >>>> >>>> I have to mention some issue i came across during the project. Also my >>>> progress and that issues are listed below. >>>> >>>> >>>> - As i mention earlier when user invoke some Admin service >>>> operation, user have to import those library to the Robot test >>>> script before run the test case . The problem of this approach is user >>>> have >>>> to have some kind of knowledge about operation's library. Then those >>>> Libraries are generated and added to the Script. Since using this >>>> approach >>>> user get confuse with importing library, another mechanism have to >>>> include. >>>> One Approach is Generate all the Library class for each Admin service >>>> and >>>> import to the Script in advance.Then user don't have to worry about >>>> identify which library to include. This is the most simple mechanism for >>>> this problem. Also if there is another good solution to solve this, >>>> please >>>> let me know. >>>> >>>> >>>> >>>> - Also i started to integrate my Project to the Automation >>>> Framework. As First step i developed a Test Module for Product ESB >>>> based on >>>> the my Project. Module is working with .jar distribution of the Project >>>> installed into the local maven repository. With this, user just have to >>>> implement a Robot script test suit inside " >>>> *src/test/resources/robotframework/tests*" folder and Configuration >>>> file inside "*src/test/resource"*. Then in the pom.xml file, have >>>> to add "robotframework-maven-plugin" and import jar distribution of the >>>> Project from local maven repository. Still i'm doing some modification >>>> to >>>> read configuration data from the resource files. Here Project mean my >>>> "Auto-TAF-cmd" project[1]. >>>> >>>> >>>> >>>> - Also i added feature to read the configuration details from* >>>> automation.xml*. Still configuring project to read all the data >>>> required to Project from this .xml file. >>>> >>>> >>>> This is my current progress and issues i faced. Also i like to get your >>>> valuable feedback as well. >>>> >>>> [1] >>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/master/Auto-TAF-cmd >>>> >>>> >>>> Thanks and regards. >>>> >>>> >>>> >>>> On Fri, Jul 11, 2014 at 12:16 PM, Rukshan Chathuranga < >>>> [email protected]> wrote: >>>> >>>>> HI all, >>>>> >>>>> Thanks Malintha for you feedback. >>>>> >>>>> I have an idea and i used such a custom library to create some Object. >>>>> Idea is, identify such objects and manually create the standard library >>>>> with such a methods. >>>>> >>>>> Also we can come up with a generic method that take Object type as >>>>> variable and return the Object. But i didn't tried such a method yet. >>>>> >>>>> Also this weekend i hoped to get better understanding about Automation >>>>> framework and try to write my own test case for ESB. Until now i could >>>>> built Product-ESB and run it's test cases. >>>>> >>>>> Then i'll let you know the result of the my progress. >>>>> >>>>> Thanks and regards. >>>>> >>>>> >>>>> >>>>> On Fri, Jul 11, 2014 at 11:38 AM, Malintha Adikari <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi Rukshan, >>>>>> >>>>>> Please fine my comments inline >>>>>> >>>>>> >>>>>> On Wed, Jul 9, 2014 at 10:42 AM, Rukshan Chathuranga < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> I faced a issue when invoking the admin services. Problem is some >>>>>>> services operations return objects rather than primitive data types. >>>>>>> Since >>>>>>> these admin services client classes are generated automatically these >>>>>>> operation's return type and parameter types can be java Objects. When >>>>>>> user >>>>>>> invoke such a operations they have to create object in advance and pass >>>>>>> to >>>>>>> the operation. It is affect to the user experience since some users >>>>>>> doesn't >>>>>>> know the low level architecture. >>>>>>> >>>>>>> here is example robot script, >>>>>>> >>>>>>> *check proxy type* >>>>>>> * init ServiceAdmin* >>>>>>> * get ServiceData echo* >>>>>>> *Assert getServiceData expected* >>>>>>> >>>>>>> At the 3rd link it return *ServiceMetaData *Object*. *Then, when >>>>>>> assert the operation result, it need to pass the *expected *value >>>>>>> as a *ServiceMetaData *Object*. * >>>>>>> >>>>>>> there is two solutions to avoid this problem. >>>>>>> >>>>>>> Solution 1: >>>>>>> >>>>>>> Identify the such a admin service and manually implement the service >>>>>>> client. if some operations accept object as parameters, it changed to >>>>>>> primitive types and implement the object inside operations. >>>>>>> >>>>>>> ex: >>>>>>> >>>>>>> if original method is like this, >>>>>>> >>>>>>> *void sendLoad(**ServiceMetaData** ob){* >>>>>>> * client.send(ob);* >>>>>>> *}* >>>>>>> >>>>>>> then change it as this. >>>>>>> *void sendLoad(boolean active, String type){* >>>>>>> >>>>>>> * ServiceMetaData ob=new ServiceMetaData();* >>>>>>> * ob.setActive(active);* >>>>>>> * ob.setServiceType(type);* >>>>>>> >>>>>>> * client.send(ob);* >>>>>>> *}* >>>>>>> >>>>>>> >>>>>>> IMO, this solution is not much practical. We have to find each and >>>>>> every adminservice and crate a client for it manually. So this would not >>>>>> be >>>>>> scalable solution. >>>>>> >>>>>> >>>>>>> Solution 2: >>>>>>> >>>>>>> Crete a new custom Library and implement methods to create Object >>>>>>> for users. >>>>>>> >>>>>>> ex: >>>>>>> >>>>>>> create method to create specific Object >>>>>>> *public* *ServiceMetaData* *CreateServiceMetaDataObject(boolean >>>>>>> active, String type){* >>>>>>> >>>>>>> *ServiceMetaData ob=new ServiceMetaData();* >>>>>>> * ob.setActive(active);* >>>>>>> * ob.setServiceType(type);* >>>>>>> >>>>>>> * return ob;* >>>>>>> *}* >>>>>>> >>>>>>> >>>>>>> Now script write like this, >>>>>>> >>>>>>> *check proxy type* >>>>>>> * init ServiceAdmin* >>>>>>> * get ServiceData echo* >>>>>>> * ${**expected**}= **Create ServiceMetaData Object true >>>>>>> proxy* >>>>>>> >>>>>>> *Assert getServiceData ** ${**expected**}* >>>>>>> >>>>>>> >>>>>>> This approach is more practical but the problem is the methodology >>>>>> of creating a custom library. Have you any idea about creating this kind >>>>>> of >>>>>> custom library . If we can agree on a scalable methodology , IMO we can >>>>>> proceed with this approach. >>>>>> >>>>>> Regards, >>>>>> Malintha Adikari >>>>>> >>>>>>> >>>>>>> This is the issues that are arise when scripting in natural >>>>>>> language. I used Some of this solutions to avoid some issue, had before. >>>>>>> >>>>>>> Also i like to know whether there is any good solutions to avoid >>>>>>> this problem and improve the usability. >>>>>>> >>>>>>> >>>>>>> Thanks and regards. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Mon, Jun 30, 2014 at 9:34 PM, Dharshana Warusavitharana < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Sure Rukshan, >>>>>>>> >>>>>>>> Shall we have a hangout so you can demo all things you did so far >>>>>>>> and draft a plan to move forward and clarify issues you have. >>>>>>>> >>>>>>>> Thank You, >>>>>>>> Dharshana. >>>>>>>> >>>>>>>> >>>>>>>> On Mon, Jun 30, 2014 at 8:42 AM, Rukshan Chathuranga < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi all, >>>>>>>>> >>>>>>>>> First, thanks you all to your support to successfully complete the >>>>>>>>> project up to mid evaluation. Also i'm looking forward your help to >>>>>>>>> continue my Project. >>>>>>>>> >>>>>>>>> Up to now, i could complete basic requirement of the project. Also >>>>>>>>> next steps are very important and very complex. Thus can we a time to >>>>>>>>> discuss about these issues? >>>>>>>>> >>>>>>>>> Thanks and regards. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Jun 24, 2014 at 10:24 PM, Rukshan Chathuranga < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>>> Hi All, >>>>>>>>>> >>>>>>>>>> I thought to share my experience i gained during this GSOC >>>>>>>>>> project. While doing this i faced lot of Problems and have to come >>>>>>>>>> up with >>>>>>>>>> solutions to overcome those things. Thus i am going to summarize >>>>>>>>>> those >>>>>>>>>> thing in this mail. >>>>>>>>>> >>>>>>>>>> At the very beginning i have to identifying the Project scope >>>>>>>>>> well. Project goal was to let users to write the test cases for WSO2 >>>>>>>>>> Product in natural Language. For that i develop the Design >>>>>>>>>> architecture[1]. >>>>>>>>>> According to the Design, test cases are write on a text file. Then >>>>>>>>>> convert >>>>>>>>>> them all to the common format and keep them in XML files. Also design >>>>>>>>>> module called Common API used to identified correct admin service at >>>>>>>>>> the >>>>>>>>>> back-end and invoke them. This was the initial design and foundation >>>>>>>>>> to the >>>>>>>>>> Project. >>>>>>>>>> >>>>>>>>>> I divided the project into three module based on the functions. >>>>>>>>>> Those are, >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Natural Language Processor, >>>>>>>>>> - Common API >>>>>>>>>> - Test Execution Engine. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> To process Natural Language i decided to use OpenNLP. but it had >>>>>>>>>> some complexities and that won't in our Project. Because we have to >>>>>>>>>> add >>>>>>>>>> some limitations when write test cases. The alternative was the Robot >>>>>>>>>> Framework. it have capability of natural language processing and use >>>>>>>>>> of >>>>>>>>>> Dynamic Libraries, predefined and 3 rd party Libraries. Thus i >>>>>>>>>> carried out >>>>>>>>>> testing and research to confirm its capability. Then it was success >>>>>>>>>> and >>>>>>>>>> decided to use Robot framework. >>>>>>>>>> >>>>>>>>>> The next requirement was to implement the Admin service Clients. >>>>>>>>>> It should be dynamically generated, because there can be any number >>>>>>>>>> of >>>>>>>>>> Admin services. For that i used the WSDL2java with eclipse >>>>>>>>>> "cxf-codegen-plugin" plug-in. it work well to generate Client code >>>>>>>>>> based on >>>>>>>>>> the WSDL. it generate the Stub classes and have to implement(code by >>>>>>>>>> manual) client codes. According to the project scope this one also >>>>>>>>>> have to >>>>>>>>>> be automated. then i identified the pattern that can used to generate >>>>>>>>>> Client for their available operations. Then used the java String >>>>>>>>>> template[2] to define common template to generate Client classes. >>>>>>>>>> But to >>>>>>>>>> generate class it need to get WSDL details like port-type, available >>>>>>>>>> operations, parameters etc. it was hard to get them reading from >>>>>>>>>> WSDL as >>>>>>>>>> XML. i found a library that fit for this requirement, named >>>>>>>>>> SOA-model-core[3]. all this together it was possible to generate the >>>>>>>>>> Client >>>>>>>>>> classes. Then used them as Library to Robot Framework. >>>>>>>>>> >>>>>>>>>> But when testing more WSDL file, it was not work as expected. >>>>>>>>>> Reason was in the WSDL, there was predefined namespaces inside java. >>>>>>>>>> then >>>>>>>>>> generating Stub class, it generated class with invalid package name >>>>>>>>>> like " >>>>>>>>>> java.util.xsd". Thus it was not possible to generate stub class >>>>>>>>>> form same steps. it has to map invalid namespaces to valid ones >>>>>>>>>> manually. >>>>>>>>>> Then i identified the such a admin service and import them as Maven >>>>>>>>>> dependencies and avoid auto generating Stub class. Then have to >>>>>>>>>> improve the >>>>>>>>>> Client generating part based on this new changes. Then used the java >>>>>>>>>> reflection to identified the available operations and namespace >>>>>>>>>> rather than >>>>>>>>>> reading WSDL. But Stub class have unwanted parameter and operations. >>>>>>>>>> to >>>>>>>>>> Filter them again, used WSDL to get such a information. Then it was >>>>>>>>>> possible to generate Client classes based on the Stub classes, WSDL >>>>>>>>>> file >>>>>>>>>> and with java reflection and String template. >>>>>>>>>> >>>>>>>>>> up-to this point project was implemented as testing project and >>>>>>>>>> it can be available at the git repository[4]. >>>>>>>>>> >>>>>>>>>> Clients are generated based on the Stub class and WSDL file. >>>>>>>>>> Those details should be automatically configured. Also generated >>>>>>>>>> Client >>>>>>>>>> classes used as Library for scripting and user have to import them >>>>>>>>>> before >>>>>>>>>> use them. Library name is getting by adding "Library" to its service >>>>>>>>>> name. >>>>>>>>>> All the automated Clients are generated into java "robotlib >>>>>>>>>> <https://github.com/ruks/Automated-test-case-generation-tool/tree/master/Auto-TAF-cmd/src/main/java/robotlib>" >>>>>>>>>> package. Whenever user import Some library it should be generated in >>>>>>>>>> to >>>>>>>>>> proper place before test cases are execute. Thus before test >>>>>>>>>> execution >>>>>>>>>> start, it read the test script and identified the imported >>>>>>>>>> libraries. Next, >>>>>>>>>> it collect necessary information like Stub class name and WSDL file >>>>>>>>>> name. >>>>>>>>>> Then generated the Clients. Get information based on Library was >>>>>>>>>> implemented in easy way. Project Contain the service.xml. it contain >>>>>>>>>> the >>>>>>>>>> elements named "services" and it keep the available main admin >>>>>>>>>> services >>>>>>>>>> Stub class and WSDL file names. >>>>>>>>>> >>>>>>>>>> Then after the demonstrate this solution, i get the actual test >>>>>>>>>> scenario. it's steps was like this >>>>>>>>>> >>>>>>>>>> 1.log in to esb >>>>>>>>>> 2.upload a proxy to esb >>>>>>>>>> 3.check whether it was deployed successfully >>>>>>>>>> 4.send a payload to the proxy >>>>>>>>>> 5.Get the response >>>>>>>>>> 6.Check the response is correct/incorrect >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Up to now Authentication function and keyword for robot script >>>>>>>>>> was already implemented and worked well. uploading proxy and verify >>>>>>>>>> was >>>>>>>>>> function of the ProxyServiceAdmin service. let it automate to >>>>>>>>>> generate >>>>>>>>>> Client classes. But problem was when adding parameters to the >>>>>>>>>> method, it >>>>>>>>>> required Object rather than string or int information. Thus method >>>>>>>>>> of the >>>>>>>>>> Class have to be manually customized and avoided it generating >>>>>>>>>> automatically. >>>>>>>>>> >>>>>>>>>> The next step was to send the payload and get the response. The >>>>>>>>>> solution was use the Axis2ServiceClient. But Mr Malintha >>>>>>>>>> Provided Already implemented code sample for that and just had to >>>>>>>>>> customized it. Then it was possible to automate such a test scenario. >>>>>>>>>> >>>>>>>>>> But next step is to let users to write the test script in natural >>>>>>>>>> language and easy to understand to them. Also it should assert low >>>>>>>>>> level function and configuration. For that, used configuration file >>>>>>>>>> to keep >>>>>>>>>> some configurations. This configuration file have to be improve as >>>>>>>>>> XML file >>>>>>>>>> to keep many configuration detail for all the test cases. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> The ultimate Goal of the project was to add this features to >>>>>>>>>> WSO2 TAF. Now most of the basic functions and implementation are >>>>>>>>>> finished. >>>>>>>>>> As next step it should be integrate to the TAF. Also some >>>>>>>>>> improvement have >>>>>>>>>> to be done for scripting to support usability. For that i suppose to >>>>>>>>>> add more descriptive Keyword >>>>>>>>>> to the Robot framework to use functions and assert the response. For >>>>>>>>>> that supposed to add different kind of libraries like >>>>>>>>>> static,Dynamic, 3rd party and standard Libraries. Static libraries >>>>>>>>>> mean >>>>>>>>>> some libraries that are not going to be change. Dynamic libraries >>>>>>>>>> will be generated whenever user use it. 3rd party libraries like >>>>>>>>>> Selenium >>>>>>>>>> Driver also can be used. Standard Library mean Some static Libraries >>>>>>>>>> that >>>>>>>>>> can be used to test the response. it will contain some basic >>>>>>>>>> functions to >>>>>>>>>> Assert arrays, Objects and create some complex data types like >>>>>>>>>> Arrays, >>>>>>>>>> Objects and Om-element. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> This is the current Progress of the Project and further plan of >>>>>>>>>> the implementation. Most of the basic >>>>>>>>>> and foundation implementation have implemented and after the End of >>>>>>>>>> the >>>>>>>>>> Project it will fulfill the project ultimate goal. I blog about >>>>>>>>>> current experience I've gained on my website[5]. Some basic >>>>>>>>>> example I've tried can be available on it. Also All the test >>>>>>>>>> Projects, web >>>>>>>>>> service Project and different version of the current Project can be >>>>>>>>>> found >>>>>>>>>> at my git repository[6]. The Project that currently working on can >>>>>>>>>> be found >>>>>>>>>> at the this repository[7]. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> [1] >>>>>>>>>> http://rukspot.com/sites/default/files/images/wso2/wso2_Test_Archi_3.png >>>>>>>>>> [2] http://www.stringtemplate.org/ >>>>>>>>>> [3] http://www.membrane-soa.org/downloads/soa-model.htm >>>>>>>>>> [4] >>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/master/test1 >>>>>>>>>> [5] http://rukspot.com/ >>>>>>>>>> [6] https://github.com/ruks/Automated-test-case-generation-tool >>>>>>>>>> [7] >>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/master/Auto-TAF-cmd >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Thanks and regards. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Mon, Jun 23, 2014 at 7:48 PM, Malintha Adikari < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Rukshan, >>>>>>>>>>> >>>>>>>>>>> Test Automation Framework uses single location (automation.xml >>>>>>>>>>> file ) [1] to store all configuration details related to tests. >>>>>>>>>>> According >>>>>>>>>>> the robot scripts you have sent ,test scripts include lot of >>>>>>>>>>> configuration >>>>>>>>>>> details. We can use automation.xml to retrieve appropriate >>>>>>>>>>> configurations >>>>>>>>>>> as it already facilitates to store most of those configuration >>>>>>>>>>> details. >>>>>>>>>>> Please have a look at automation.xml file and let's come up with a >>>>>>>>>>> way to >>>>>>>>>>> handle those configuration details include in robot scripts. >>>>>>>>>>> >>>>>>>>>>> [1] >>>>>>>>>>> https://github.com/wso2-dev/carbon-platform-integration/blob/master/test-automation-framework/org.wso2.carbon.automation.engine/src/main/resources/automation.xml >>>>>>>>>>> >>>>>>>>>>> Regards, >>>>>>>>>>> Malintha Adikari >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Mon, Jun 23, 2014 at 3:58 PM, Rukshan Chathuranga < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi all, >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> I attached the Document with actual scenario and Robot >>>>>>>>>>>> framework script with this. Also have attached the original robot >>>>>>>>>>>> framework >>>>>>>>>>>> script source file. Some comments have added to the Script for >>>>>>>>>>>> describe the >>>>>>>>>>>> functions. >>>>>>>>>>>> >>>>>>>>>>>> If Some clarification is needed to understand the script please >>>>>>>>>>>> let me know. >>>>>>>>>>>> >>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Mon, Jun 23, 2014 at 9:39 AM, Malintha Adikari < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Rukshan, >>>>>>>>>>>>> >>>>>>>>>>>>> Can you provide the robot script and the original scenario >>>>>>>>>>>>> steps in a same doc. So we can use that document to compare two >>>>>>>>>>>>> cases. >>>>>>>>>>>>> >>>>>>>>>>>>> Regards, >>>>>>>>>>>>> Malintha Adikari >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> On Sun, Jun 22, 2014 at 9:47 AM, Rukshan Chathuranga < >>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> HI all, >>>>>>>>>>>>>> >>>>>>>>>>>>>> Previous days i was working on adding testing scenario like >>>>>>>>>>>>>> below steps. >>>>>>>>>>>>>> >>>>>>>>>>>>>> 1.log in to esb >>>>>>>>>>>>>> >>>>>>>>>>>>>> 2.upload a proxy to esb >>>>>>>>>>>>>> 3.check whether it was deployed successfully >>>>>>>>>>>>>> 4.send a payload to the proxy >>>>>>>>>>>>>> 5.Get the response >>>>>>>>>>>>>> 6.Check the response is correct/incorrect >>>>>>>>>>>>>> >>>>>>>>>>>>>> After a one week of research and testing i was able >>>>>>>>>>>>>> to successfully Automate scenario like above. Still i am testing >>>>>>>>>>>>>> with this >>>>>>>>>>>>>> scenario to improve the it's correctness and improve the >>>>>>>>>>>>>> usability. >>>>>>>>>>>>>> >>>>>>>>>>>>>> The project with these new modification can be view on my Git >>>>>>>>>>>>>> repository[1]. >>>>>>>>>>>>>> Also all the projects and testing project i did so far can be >>>>>>>>>>>>>> view on main repo.[2] >>>>>>>>>>>>>> >>>>>>>>>>>>>> [1] >>>>>>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/master/Auto-TAF-cmd >>>>>>>>>>>>>> [2] >>>>>>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Fri, Jun 20, 2014 at 9:22 PM, Rukshan Chathuranga < >>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> I used the above[1] example to send a payload to the Axis2 >>>>>>>>>>>>>>> Services. It works well on services that deployed on Axis2 >>>>>>>>>>>>>>> server. But it >>>>>>>>>>>>>>> is not work for the Uploaded proxy services of the ESB. What >>>>>>>>>>>>>>> can be the >>>>>>>>>>>>>>> problem? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> This is the exception i got. >>>>>>>>>>>>>>> "AxisFault while getting response :The input stream for an >>>>>>>>>>>>>>> incoming message is null." >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Also i used "https://localhost:8243/services/echo" >>>>>>>>>>>>>>> as endPointReference. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> [1] >>>>>>>>>>>>>>> https://github.com/wso2/carbon-platform-integration/blob/master/test-automation-framework/org.wso2.carbon.automation.test.utils/src/main/java/org/wso2/carbon/automation/test/utils/axis2client/AxisServiceClient.java >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Fri, Jun 20, 2014 at 2:07 PM, Malintha Adikari < >>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi Rukshan, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Thu, Jun 19, 2014 at 7:01 PM, Rukshan Chathuranga < >>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> I could automate the ProxyServiceAdmin Admin service to >>>>>>>>>>>>>>>>> upload the proxy to ESB. Also it support, Confirm whether it >>>>>>>>>>>>>>>>> is successful >>>>>>>>>>>>>>>>> or not. This steps was possible to written in robot test >>>>>>>>>>>>>>>>> script. >>>>>>>>>>>>>>>>> Thus i'm try to scripting and automate to invoke the >>>>>>>>>>>>>>>>> uploaded proxy services. for that can you let me know, what >>>>>>>>>>>>>>>>> are the >>>>>>>>>>>>>>>>> available options to invoke the proxy services. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> You can use Axis2ServiceClient [1] for invoked the >>>>>>>>>>>>>>>> deployed proxy service. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> [1] >>>>>>>>>>>>>>>> https://github.com/wso2/carbon-platform-integration/blob/master/test-automation-framework/org.wso2.carbon.automation.test.utils/src/main/java/org/wso2/carbon/automation/test/utils/axis2client/AxisServiceClient.java >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>>> Malintha Adikari >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Thu, Jun 19, 2014 at 11:56 AM, Malintha Adikari < >>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Please note the update for the test scenario : >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Thu, Jun 19, 2014 at 11:52 AM, Malintha Adikari < >>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Hi Rukshan, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> As the next step we can evaluate the usability of robot >>>>>>>>>>>>>>>>>>> scripts. Then we have to come up with a way to enhance the >>>>>>>>>>>>>>>>>>> usability of >>>>>>>>>>>>>>>>>>> the test scripts based on that evaluation. Could you try to >>>>>>>>>>>>>>>>>>> develop an >>>>>>>>>>>>>>>>>>> automated test case using robot for following test scenario >>>>>>>>>>>>>>>>>>> and compare the >>>>>>>>>>>>>>>>>>> original script and robot script and evaluate the >>>>>>>>>>>>>>>>>>> differences between two >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> *. login to Application server >>>>>>>>>>>>>>>>>> * upload a service to application server >>>>>>>>>>>>>>>>>> * confirm the uploaded server has been deployed >>>>>>>>>>>>>>>>>> successfully >>>>>>>>>>>>>>>>>> (this should be your back end service for the ESB proxy >>>>>>>>>>>>>>>>>> service) >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> 1.login to esb >>>>>>>>>>>>>>>>>>> 2.upload a proxy to esb >>>>>>>>>>>>>>>>>>> 3.check whether it was deployed successfully >>>>>>>>>>>>>>>>>>> 4.send a payload to the proxy >>>>>>>>>>>>>>>>>>> 5.Get the response >>>>>>>>>>>>>>>>>>> 6.Check the response is correct/incorrect >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>>>>>> Malintha Adikari >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> On Tue, Jun 17, 2014 at 2:14 PM, Rukshan Chathuranga < >>>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> I added a xml file to keep stub name and wsdl file >>>>>>>>>>>>>>>>>>>> name of each admin services. its structure is looks like >>>>>>>>>>>>>>>>>>>> this. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> <service >>>>>>>>>>>>>>>>>>>> stub="org.wso2.carbon.statistics.stub.StatisticsAdminStub" >>>>>>>>>>>>>>>>>>>> name="StatisticsAdmin" wsdl="StatisticsAdmin" >>>>>>>>>>>>>>>>>>>> lib="StatisticsAdminLibrary"/> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Then added new java method to return wsdl name and stub >>>>>>>>>>>>>>>>>>>> class name. It is like this. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> public static String[] getServiceInfor(String lib) { >>>>>>>>>>>>>>>>>>>> File pomfile = new File("service.xml"); >>>>>>>>>>>>>>>>>>>> String[] res; >>>>>>>>>>>>>>>>>>>> try { >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> DocumentBuilder dBuilder = >>>>>>>>>>>>>>>>>>>> DocumentBuilderFactory.newInstance() >>>>>>>>>>>>>>>>>>>> .newDocumentBuilder(); >>>>>>>>>>>>>>>>>>>> Document doc = dBuilder.parse(pomfile); >>>>>>>>>>>>>>>>>>>> System.out.println("Root element :" >>>>>>>>>>>>>>>>>>>> + doc.getDocumentElement().getNodeName()); >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> NodeList service = doc.getElementsByTagName("service"); >>>>>>>>>>>>>>>>>>>> for (int i = 0; i < service.getLength(); i++) { >>>>>>>>>>>>>>>>>>>> Element ele = (Element) service.item(i); >>>>>>>>>>>>>>>>>>>> if (ele.getAttribute("lib").equals(lib)) { >>>>>>>>>>>>>>>>>>>> res = new String[2]; >>>>>>>>>>>>>>>>>>>> res[0] = ele.getAttribute("stub"); >>>>>>>>>>>>>>>>>>>> res[1] = ele.getAttribute("wsdl"); >>>>>>>>>>>>>>>>>>>> return res; >>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>> return null; >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> } catch (Exception e) { >>>>>>>>>>>>>>>>>>>> System.out.println(e.getMessage()); >>>>>>>>>>>>>>>>>>>> return null; >>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>> } >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> So if there are any issue in this procedure please let >>>>>>>>>>>>>>>>>>>> me know. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> On Sat, Jun 14, 2014 at 9:10 AM, Rukshan Chathuranga < >>>>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Hi Dharshana, >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> No. it was not the resolving the dependencies of the >>>>>>>>>>>>>>>>>>>>> client. Sorry if my mail is not much clear. :) >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> I wanted to import required classes for Client that >>>>>>>>>>>>>>>>>>>>> generated based on the Stub classes. My first step was >>>>>>>>>>>>>>>>>>>>> taking package >>>>>>>>>>>>>>>>>>>>> information from the POM.xml as you said. but it contain >>>>>>>>>>>>>>>>>>>>> only some parent >>>>>>>>>>>>>>>>>>>>> package names and also those get mapped to the new >>>>>>>>>>>>>>>>>>>>> package names(rename). >>>>>>>>>>>>>>>>>>>>> Thus it was difficulty to extract all the classes. Also >>>>>>>>>>>>>>>>>>>>> some extra >>>>>>>>>>>>>>>>>>>>> libraries get imported and some required libraries not >>>>>>>>>>>>>>>>>>>>> get imported. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> But using reflection it is possible to get all the >>>>>>>>>>>>>>>>>>>>> operation's information of the stub classes. Then >>>>>>>>>>>>>>>>>>>>> importing required class >>>>>>>>>>>>>>>>>>>>> for parameters and return type was much easier. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> ex: >>>>>>>>>>>>>>>>>>>>> import >>>>>>>>>>>>>>>>>>>>> org.wso2.carbon.service.mgt.stub.ServiceAdminStub; >>>>>>>>>>>>>>>>>>>>> import >>>>>>>>>>>>>>>>>>>>> org.wso2.carbon.service.mgt.stub.types.carbon.ServiceDownloadData; >>>>>>>>>>>>>>>>>>>>> import >>>>>>>>>>>>>>>>>>>>> org.wso2.carbon.service.mgt.stub.types.carbon.ServiceGroupMetaData; >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> On Sat, Jun 14, 2014 at 12:18 AM, Dharshana >>>>>>>>>>>>>>>>>>>>> Warusavitharana <[email protected]> wrote: >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Hi Rekshan, >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Do we really need this step. AFAICU you are trying to >>>>>>>>>>>>>>>>>>>>>> automate the dependency resolving of your client library. >>>>>>>>>>>>>>>>>>>>>> Basically, there is a limited set of dependency for >>>>>>>>>>>>>>>>>>>>>> external libraries when you are generating the client. >>>>>>>>>>>>>>>>>>>>>> That >>>>>>>>>>>>>>>>>>>>>> won't expand much over introducing new stubs. >>>>>>>>>>>>>>>>>>>>>> You can have general pom file which have basic >>>>>>>>>>>>>>>>>>>>>> dependencies which are common to the general stubs. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> And im not clear how you would identify extra >>>>>>>>>>>>>>>>>>>>>> libraries you need by just using reflection. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Correct me if im wrong >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Thank you, >>>>>>>>>>>>>>>>>>>>>> Dharshana. >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> On Fri, Jun 13, 2014 at 10:51 AM, Rukshan Chathuranga >>>>>>>>>>>>>>>>>>>>>> <[email protected]> wrote: >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Hi All, >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> I could manage the issue occurred during Client >>>>>>>>>>>>>>>>>>>>>>> generation from Stub. I get operations from the WSDL >>>>>>>>>>>>>>>>>>>>>>> file and used Java >>>>>>>>>>>>>>>>>>>>>>> reflection to identify the information of those >>>>>>>>>>>>>>>>>>>>>>> operation. Then it help me >>>>>>>>>>>>>>>>>>>>>>> to identified the required Libraries and import them >>>>>>>>>>>>>>>>>>>>>>> into generated Client >>>>>>>>>>>>>>>>>>>>>>> libraries. Also added Property file to get services >>>>>>>>>>>>>>>>>>>>>>> host and port >>>>>>>>>>>>>>>>>>>>>>> information. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> new version of the project can be found from here. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/991e6e21927288d237c0a8d1985b7d2787f91a9b/Auto-TAF >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> On Tue, Jun 10, 2014 at 3:24 PM, Rukshan Chathuranga >>>>>>>>>>>>>>>>>>>>>>> <[email protected]> wrote: >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> Hi Malintha, >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> Generating Client from Stub is not problem with one >>>>>>>>>>>>>>>>>>>>>>>> String template file. Template file contain generic >>>>>>>>>>>>>>>>>>>>>>>> Class structure like >>>>>>>>>>>>>>>>>>>>>>>> Method, Constructor, Fields and Import library. Only >>>>>>>>>>>>>>>>>>>>>>>> difference is their >>>>>>>>>>>>>>>>>>>>>>>> name and object type. Identifying the those names and >>>>>>>>>>>>>>>>>>>>>>>> type from WSDL, it is >>>>>>>>>>>>>>>>>>>>>>>> possible to generate Different client for different >>>>>>>>>>>>>>>>>>>>>>>> Stub. >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> On Tue, Jun 10, 2014 at 3:09 PM, Malintha Adikari < >>>>>>>>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> Hi Rukshan, >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> On Tue, Jun 10, 2014 at 2:49 PM, Rukshan >>>>>>>>>>>>>>>>>>>>>>>>> Chathuranga <[email protected]> wrote: >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> These days i am working on Automatically >>>>>>>>>>>>>>>>>>>>>>>>>> Generating Client code. Now i able to generate >>>>>>>>>>>>>>>>>>>>>>>>>> Client Code using String >>>>>>>>>>>>>>>>>>>>>>>>>> Template. For That i Used previously Used String >>>>>>>>>>>>>>>>>>>>>>>>>> Template file with Some >>>>>>>>>>>>>>>>>>>>>>>>>> Modification. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> Now project can generate the Stub file and >>>>>>>>>>>>>>>>>>>>>>>>>> automatically generate the Client Based on the WSDL >>>>>>>>>>>>>>>>>>>>>>>>>> and Stub. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> I have a doubt about using single string template >>>>>>>>>>>>>>>>>>>>>>>>> for generating client code for all stubs. The purpose >>>>>>>>>>>>>>>>>>>>>>>>> and the >>>>>>>>>>>>>>>>>>>>>>>>> implementation of each admin service is different. So >>>>>>>>>>>>>>>>>>>>>>>>> Can we use one string >>>>>>>>>>>>>>>>>>>>>>>>> template for generating the clients for all those >>>>>>>>>>>>>>>>>>>>>>>>> different WSDLs. String >>>>>>>>>>>>>>>>>>>>>>>>> template approach is better. IMO, we have to come up >>>>>>>>>>>>>>>>>>>>>>>>> with a way to treat >>>>>>>>>>>>>>>>>>>>>>>>> all different admin services through string templates. >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> Also generated Client can be used as Library to >>>>>>>>>>>>>>>>>>>>>>>>>> Robot Framework to implement keyword driven testing. >>>>>>>>>>>>>>>>>>>>>>>>>> Also it's possible to >>>>>>>>>>>>>>>>>>>>>>>>>> invoke Admin services and Assert the operation. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> With all of these modification i create the new >>>>>>>>>>>>>>>>>>>>>>>>>> Project and committed to the Git Repo. It is >>>>>>>>>>>>>>>>>>>>>>>>>> available at here. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> https://github.com/ruks/Automated-test-case-generation-tool/tree/991e6e21927288d237c0a8d1985b7d2787f91a9b/Auto-TAF >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> Then for the next few days i'm hoping to >>>>>>>>>>>>>>>>>>>>>>>>>> understand the Robot Framework scripting in depth to >>>>>>>>>>>>>>>>>>>>>>>>>> verify whether we can >>>>>>>>>>>>>>>>>>>>>>>>>> improve Robot framework scripting. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> Yes, We have to make test writing user friendly. >>>>>>>>>>>>>>>>>>>>>>>>> First we have to find points that make test writing >>>>>>>>>>>>>>>>>>>>>>>>> difficult. Then we have >>>>>>>>>>>>>>>>>>>>>>>>> to come up with a generic solution to call all those >>>>>>>>>>>>>>>>>>>>>>>>> difficulties. Can you >>>>>>>>>>>>>>>>>>>>>>>>> try to write test cases for some different admin >>>>>>>>>>>>>>>>>>>>>>>>> services with your >>>>>>>>>>>>>>>>>>>>>>>>> existing solution. Then you can refer those test to >>>>>>>>>>>>>>>>>>>>>>>>> analyze difficulties. >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>>>>>>>>>>>> Malintha Adikari >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> On Sun, Jun 8, 2014 at 12:17 AM, Rukshan >>>>>>>>>>>>>>>>>>>>>>>>>> Chathuranga <[email protected]> wrote: >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> Hi all, >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> These days i am working on solving the problems >>>>>>>>>>>>>>>>>>>>>>>>>>> that are occurred during the Client Generation. >>>>>>>>>>>>>>>>>>>>>>>>>>> These exceptions are >>>>>>>>>>>>>>>>>>>>>>>>>>> occurred when using the "cxf-codegen-plugin" with >>>>>>>>>>>>>>>>>>>>>>>>>>> wsdl2java. As a >>>>>>>>>>>>>>>>>>>>>>>>>>> alternative solution, i decided to understand the >>>>>>>>>>>>>>>>>>>>>>>>>>> existing service stub >>>>>>>>>>>>>>>>>>>>>>>>>>> generating procedure to generate Stub code. And >>>>>>>>>>>>>>>>>>>>>>>>>>> then generate Client code >>>>>>>>>>>>>>>>>>>>>>>>>>> that could be use as Library to Robot Framework. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> For that i refereed these two >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> https://svn.wso2.org/repos/wso2/carbon/kernel/trunk/service-stubs/ >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> https://svn.wso2.org/repos/wso2/carbon/platform/trunk/service-stubs/ >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> repositories to generate Stub >>>>>>>>>>>>>>>>>>>>>>>>>>> sources to support my requirement. up to now i >>>>>>>>>>>>>>>>>>>>>>>>>>> could be able to generate >>>>>>>>>>>>>>>>>>>>>>>>>>> Stub code for WSDL listed in these repositories. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> Also the main problem had earlier the "certificate >>>>>>>>>>>>>>>>>>>>>>>>>>> Exception" occurred initiating Client, could be >>>>>>>>>>>>>>>>>>>>>>>>>>> solved by setting up certificate file properly in >>>>>>>>>>>>>>>>>>>>>>>>>>> system property. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> Now Robot framework able to run test case with >>>>>>>>>>>>>>>>>>>>>>>>>>> authenticate and invoke some basic admin service >>>>>>>>>>>>>>>>>>>>>>>>>>> that are hard coded as >>>>>>>>>>>>>>>>>>>>>>>>>>> Library to Robot framework. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> Thus my next step is to Generate this Library >>>>>>>>>>>>>>>>>>>>>>>>>>> Classes Automatically based on the WSDL file and >>>>>>>>>>>>>>>>>>>>>>>>>>> provide to the Robot >>>>>>>>>>>>>>>>>>>>>>>>>>> framework as Library. For this I decided to use my >>>>>>>>>>>>>>>>>>>>>>>>>>> previous method that >>>>>>>>>>>>>>>>>>>>>>>>>>> used String Template to generate Library Files, >>>>>>>>>>>>>>>>>>>>>>>>>>> with few modification. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks and regards. >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>>>>>>>>> Sri lanka >>>>>>>>>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>>>>>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>>>>>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>>>>>>>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>>>>>>>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>>>>>>>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> Dharshana Warusavitharana >>>>>>>>>>>>>>>>>>>>>> Senior Software Engineer , Test Automation >>>>>>>>>>>>>>>>>>>>>> WSO2 Inc. http://wso2.com >>>>>>>>>>>>>>>>>>>>>> email : [email protected] <[email protected]> >>>>>>>>>>>>>>>>>>>>>> Tel : +94 11 214 5345 >>>>>>>>>>>>>>>>>>>>>> Fax :+94 11 2145300 >>>>>>>>>>>>>>>>>>>>>> cell : +94772202595 >>>>>>>>>>>>>>>>>>>>>> blog : http://dharshanaw.blogspot.com >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>> lean . enterprise . middleware >>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>>>> Sri lanka. >>>>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>>>> Software Engineer >>>>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>>>> >>>>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>>>> Faculty Of Engineering, >>>>>>>>>>>> University Of Moratuwa. >>>>>>>>>>>> Sri lanka. >>>>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Malintha Adikari* >>>>>>>>>>> Software Engineer >>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>> >>>>>>>>>>> Mobile: +94 71 2312958 >>>>>>>>>>> Blog: http://malinthas.blogspot.com >>>>>>>>>>> Page: http://about.me/malintha >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>>> Faculty Of Engineering, >>>>>>>>>> University Of Moratuwa. >>>>>>>>>> Sri lanka. >>>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Department Of Computer Science & Engineering, >>>>>>>>> Faculty Of Engineering, >>>>>>>>> University Of Moratuwa. >>>>>>>>> Sri lanka. >>>>>>>>> WEB: http://rukspot.com/ >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> Dharshana Warusavitharana >>>>>>>> Senior Software Engineer , Test Automation >>>>>>>> WSO2 Inc. http://wso2.com >>>>>>>> email : [email protected] <[email protected]> >>>>>>>> Tel : +94 11 214 5345 >>>>>>>> Fax :+94 11 2145300 >>>>>>>> cell : +94772202595 >>>>>>>> blog : http://dharshanaw.blogspot.com >>>>>>>> >>>>>>>> lean . enterprise . middleware >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Department Of Computer Science & Engineering, >>>>>>> Faculty Of Engineering, >>>>>>> University Of Moratuwa. >>>>>>> Sri lanka. >>>>>>> WEB: http://rukspot.com/ >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Malintha Adikari* >>>>>> Software Engineer >>>>>> WSO2 Inc.; http://wso2.com >>>>>> lean.enterprise.middleware >>>>>> >>>>>> Mobile: +94 71 2312958 >>>>>> Blog: http://malinthas.blogspot.com >>>>>> Page: http://about.me/malintha >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Department Of Computer Science & Engineering, >>>>> Faculty Of Engineering, >>>>> University Of Moratuwa. >>>>> Sri lanka. >>>>> WEB: http://rukspot.com/ >>>>> >>>>> >>>> >>>> >>>> -- >>>> Department Of Computer Science & Engineering, >>>> Faculty Of Engineering, >>>> University Of Moratuwa. >>>> Sri lanka. >>>> WEB: http://rukspot.com/ >>>> >>>> >>> >>> >>> -- >>> >>> >>> *Rukshan Chathuranga.* >>> >>> *Department Of Computer Science & Engineering,* >>> >>> *Faculty Of Engineering,* >>> *University Of Moratuwa.* >>> *Sri lanka.* >>> >>> *WEB: http://rukspot.com/ <http://rukspot.com/> * >>> >>> >> >> >> -- >> *Malintha Adikari* >> Software Engineer >> WSO2 Inc.; http://wso2.com >> lean.enterprise.middleware >> >> Mobile: +94 71 2312958 >> Blog: http://malinthas.blogspot.com >> Page: http://about.me/malintha >> > > > > -- > > > *Rukshan Chathuranga.* > > *Department Of Computer Science & Engineering, * > > *Faculty Of Engineering,* > *University Of Moratuwa.* > *Sri lanka.* > > *WEB: http://rukspot.com/ <http://rukspot.com/>* > > -- *Rukshan Chathuranga.* *Department Of Computer Science & Engineering,* *Faculty Of Engineering,* *University Of Moratuwa.* *Sri lanka.* *WEB: http://rukspot.com/ <http://rukspot.com/>*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
