Follow up on SeleniumXml Test framework for OFBiz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Follow up on SeleniumXml Test framework for OFBiz

Brett
This is a follow up discussion from a presentation I gave at this year's
ApacheCon2008 conference:

http://us.apachecon.com/presentation/materials/118/ApacheCon2008_SeleniumXml.pdf

A few of us have been working on a test framework called SeleniumXml. It is
an extension of Selenium RC (http://seleniumhq.org/projects/remote-control/)
that uses XML to run Selenium tests (see the presentation above for more
details). It is currently hosted on Sourceforge (
http://sourceforge.net/projects/seleniumxml/), but we would like to
contribute it back into OFBiz to help develop a common framework for UI and
functional testing of OFBiz applications.


 *The Problem*

All of the SeleniumXml code was intentionally licensed with an Apache 2.0
license to be compatible with ofbiz, but there are some JavaScript files
that are used in the Selenium-core that are LGPL licensed. These files are
not necessary to compile the SeleniumXml code, but to execute a test you
need to run the Selenium Server which requires the core files.

As we have discussed in this ML, Apache will not host GPL like licensed
files on their servers (including LGPL) which creates a problem for us
contributing the code to OFBiz. Here are a couple solutions to this problem.


 *Proposed Solutions*

   1.

   Create a custom ant target (e.g. install-selenium-xml) that downloads the
   selenium-server.jar from a non-Apache hosted website (e.g. SourceForge). For
   example, the Apache Velocity project does this with their build which may be
   to work around possible license problems as we have here.
   2.

   Another possibility is to replace the LGPL JavaScript files with our own
   version and then get the Selenium project to adopt the Apache licensed
   version. There isn't a lot of code to change, but it would take an effort to
   test it thoroughly to make sure all the Selenium code still worked with the
   change.

Solution 1 above will be the quickest to implement, but solution 2 may be a
better long term strategy. Please provide your feedback if you think it
would be sufficient to have "ant" do a download of any non-apache compliant
libraries. This will keep us in compliance while still making it easy for
the community to get access to the full test framework.

The motivation behind this request is to help the community develop a
functional testing framework that is easy to use by everyone. We believe
Selenium is an excellent platform for UI and functional testing. We also
believe that if the tools are not included with the framework and if they
are difficult to use people will ignore them.

Once we have agreement on how best to add these test tools to OFBiz we can
start discussing other test topics such as:

   -

   common test data
   -

   automated test builds
   -

   new features
   -

   methods for data cleaning up after a test
   -

   how to contribute your test case to the community
   -

   etc

Thanks in advance for your feedback.


 Brett
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

Jacques Le Roux
Administrator
I vote for 1 in a 1st time while 2 would be developped

Jacques

From: "Brett Palmer" <[hidden email]>

> This is a follow up discussion from a presentation I gave at this year's
> ApacheCon2008 conference:
>
> http://us.apachecon.com/presentation/materials/118/ApacheCon2008_SeleniumXml.pdf
>
> A few of us have been working on a test framework called SeleniumXml. It is
> an extension of Selenium RC (http://seleniumhq.org/projects/remote-control/)
> that uses XML to run Selenium tests (see the presentation above for more
> details). It is currently hosted on Sourceforge (
> http://sourceforge.net/projects/seleniumxml/), but we would like to
> contribute it back into OFBiz to help develop a common framework for UI and
> functional testing of OFBiz applications.
>
>
> *The Problem*
>
> All of the SeleniumXml code was intentionally licensed with an Apache 2.0
> license to be compatible with ofbiz, but there are some JavaScript files
> that are used in the Selenium-core that are LGPL licensed. These files are
> not necessary to compile the SeleniumXml code, but to execute a test you
> need to run the Selenium Server which requires the core files.
>
> As we have discussed in this ML, Apache will not host GPL like licensed
> files on their servers (including LGPL) which creates a problem for us
> contributing the code to OFBiz. Here are a couple solutions to this problem.
>
>
> *Proposed Solutions*
>
>   1.
>
>   Create a custom ant target (e.g. install-selenium-xml) that downloads the
>   selenium-server.jar from a non-Apache hosted website (e.g. SourceForge). For
>   example, the Apache Velocity project does this with their build which may be
>   to work around possible license problems as we have here.
>   2.
>
>   Another possibility is to replace the LGPL JavaScript files with our own
>   version and then get the Selenium project to adopt the Apache licensed
>   version. There isn't a lot of code to change, but it would take an effort to
>   test it thoroughly to make sure all the Selenium code still worked with the
>   change.
>
> Solution 1 above will be the quickest to implement, but solution 2 may be a
> better long term strategy. Please provide your feedback if you think it
> would be sufficient to have "ant" do a download of any non-apache compliant
> libraries. This will keep us in compliance while still making it easy for
> the community to get access to the full test framework.
>
> The motivation behind this request is to help the community develop a
> functional testing framework that is easy to use by everyone. We believe
> Selenium is an excellent platform for UI and functional testing. We also
> believe that if the tools are not included with the framework and if they
> are difficult to use people will ignore them.
>
> Once we have agreement on how best to add these test tools to OFBiz we can
> start discussing other test topics such as:
>
>   -
>
>   common test data
>   -
>
>   automated test builds
>   -
>
>   new features
>   -
>
>   methods for data cleaning up after a test
>   -
>
>   how to contribute your test case to the community
>   -
>
>   etc
>
> Thanks in advance for your feedback.
>
>
> Brett
>
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

Erwan de FERRIERES-3
+1

Jacques Le Roux a écrit :

> I vote for 1 in a 1st time while 2 would be developped
>
> Jacques
>
> From: "Brett Palmer" <[hidden email]>
>> This is a follow up discussion from a presentation I gave at this year's
>> ApacheCon2008 conference:
>>
>> http://us.apachecon.com/presentation/materials/118/ApacheCon2008_SeleniumXml.pdf 
>>
>>
>> A few of us have been working on a test framework called SeleniumXml.
>> It is
>> an extension of Selenium RC
>> (http://seleniumhq.org/projects/remote-control/)
>> that uses XML to run Selenium tests (see the presentation above for more
>> details). It is currently hosted on Sourceforge (
>> http://sourceforge.net/projects/seleniumxml/), but we would like to
>> contribute it back into OFBiz to help develop a common framework for
>> UI and
>> functional testing of OFBiz applications.
>>
>>
>> *The Problem*
>>
>> All of the SeleniumXml code was intentionally licensed with an Apache 2.0
>> license to be compatible with ofbiz, but there are some JavaScript files
>> that are used in the Selenium-core that are LGPL licensed. These files
>> are
>> not necessary to compile the SeleniumXml code, but to execute a test you
>> need to run the Selenium Server which requires the core files.
>>
>> As we have discussed in this ML, Apache will not host GPL like licensed
>> files on their servers (including LGPL) which creates a problem for us
>> contributing the code to OFBiz. Here are a couple solutions to this
>> problem.
>>
>>
>> *Proposed Solutions*
>>
>>   1.
>>
>>   Create a custom ant target (e.g. install-selenium-xml) that
>> downloads the
>>   selenium-server.jar from a non-Apache hosted website (e.g.
>> SourceForge). For
>>   example, the Apache Velocity project does this with their build
>> which may be
>>   to work around possible license problems as we have here.
>>   2.
>>
>>   Another possibility is to replace the LGPL JavaScript files with our
>> own
>>   version and then get the Selenium project to adopt the Apache licensed
>>   version. There isn't a lot of code to change, but it would take an
>> effort to
>>   test it thoroughly to make sure all the Selenium code still worked
>> with the
>>   change.
>>
>> Solution 1 above will be the quickest to implement, but solution 2 may
>> be a
>> better long term strategy. Please provide your feedback if you think it
>> would be sufficient to have "ant" do a download of any non-apache
>> compliant
>> libraries. This will keep us in compliance while still making it easy for
>> the community to get access to the full test framework.
>>
>> The motivation behind this request is to help the community develop a
>> functional testing framework that is easy to use by everyone. We believe
>> Selenium is an excellent platform for UI and functional testing. We also
>> believe that if the tools are not included with the framework and if they
>> are difficult to use people will ignore them.
>>
>> Once we have agreement on how best to add these test tools to OFBiz we
>> can
>> start discussing other test topics such as:
>>
>>   -
>>
>>   common test data
>>   -
>>
>>   automated test builds
>>   -
>>
>>   new features
>>   -
>>
>>   methods for data cleaning up after a test
>>   -
>>
>>   how to contribute your test case to the community
>>   -
>>
>>   etc
>>
>> Thanks in advance for your feedback.
>>
>>
>> Brett
>>
>

--
- Erwan -

http://www.gnu.org/philosophy/no-word-attachments.fr.html
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

guo weizhan
+1
That's cool..

2008/12/12 Erwan de FERRIERES <[hidden email]>:

> +1
>
> Jacques Le Roux a écrit :
>>
>> I vote for 1 in a 1st time while 2 would be developped
>>
>> Jacques
>>
>> From: "Brett Palmer" <[hidden email]>
>>>
>>> This is a follow up discussion from a presentation I gave at this year's
>>> ApacheCon2008 conference:
>>>
>>>
>>> http://us.apachecon.com/presentation/materials/118/ApacheCon2008_SeleniumXml.pdf
>>>
>>> A few of us have been working on a test framework called SeleniumXml. It
>>> is
>>> an extension of Selenium RC
>>> (http://seleniumhq.org/projects/remote-control/)
>>> that uses XML to run Selenium tests (see the presentation above for more
>>> details). It is currently hosted on Sourceforge (
>>> http://sourceforge.net/projects/seleniumxml/), but we would like to
>>> contribute it back into OFBiz to help develop a common framework for UI
>>> and
>>> functional testing of OFBiz applications.
>>>
>>>
>>> *The Problem*
>>>
>>> All of the SeleniumXml code was intentionally licensed with an Apache 2.0
>>> license to be compatible with ofbiz, but there are some JavaScript files
>>> that are used in the Selenium-core that are LGPL licensed. These files
>>> are
>>> not necessary to compile the SeleniumXml code, but to execute a test you
>>> need to run the Selenium Server which requires the core files.
>>>
>>> As we have discussed in this ML, Apache will not host GPL like licensed
>>> files on their servers (including LGPL) which creates a problem for us
>>> contributing the code to OFBiz. Here are a couple solutions to this
>>> problem.
>>>
>>>
>>> *Proposed Solutions*
>>>
>>>  1.
>>>
>>>  Create a custom ant target (e.g. install-selenium-xml) that downloads
>>> the
>>>  selenium-server.jar from a non-Apache hosted website (e.g. SourceForge).
>>> For
>>>  example, the Apache Velocity project does this with their build which
>>> may be
>>>  to work around possible license problems as we have here.
>>>  2.
>>>
>>>  Another possibility is to replace the LGPL JavaScript files with our own
>>>  version and then get the Selenium project to adopt the Apache licensed
>>>  version. There isn't a lot of code to change, but it would take an
>>> effort to
>>>  test it thoroughly to make sure all the Selenium code still worked with
>>> the
>>>  change.
>>>
>>> Solution 1 above will be the quickest to implement, but solution 2 may be
>>> a
>>> better long term strategy. Please provide your feedback if you think it
>>> would be sufficient to have "ant" do a download of any non-apache
>>> compliant
>>> libraries. This will keep us in compliance while still making it easy for
>>> the community to get access to the full test framework.
>>>
>>> The motivation behind this request is to help the community develop a
>>> functional testing framework that is easy to use by everyone. We believe
>>> Selenium is an excellent platform for UI and functional testing. We also
>>> believe that if the tools are not included with the framework and if they
>>> are difficult to use people will ignore them.
>>>
>>> Once we have agreement on how best to add these test tools to OFBiz we
>>> can
>>> start discussing other test topics such as:
>>>
>>>  -
>>>
>>>  common test data
>>>  -
>>>
>>>  automated test builds
>>>  -
>>>
>>>  new features
>>>  -
>>>
>>>  methods for data cleaning up after a test
>>>  -
>>>
>>>  how to contribute your test case to the community
>>>  -
>>>
>>>  etc
>>>
>>> Thanks in advance for your feedback.
>>>
>>>
>>> Brett
>>>
>>
>
> --
> - Erwan -
>
> http://www.gnu.org/philosophy/no-word-attachments.fr.html
>
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

David E Jones-3
In reply to this post by Brett

On Dec 11, 2008, at 3:27 PM, Brett Palmer wrote:

> *Proposed Solutions*
>
>   1.
>
>   Create a custom ant target (e.g. install-selenium-xml) that  
> downloads the
>   selenium-server.jar from a non-Apache hosted website (e.g.  
> SourceForge). For
>   example, the Apache Velocity project does this with their build  
> which may be
>   to work around possible license problems as we have here.

I think I like #2 better, but for this option one alternative we could  
consider with these is that if the files are only used by the client  
(browser) we could host them somewhere where they are accessed as  
needed. This means that to run the tests the machine would have to be  
connected to the internet, but it would eliminate the need for any  
extra steps during build/run.

-David


>   2.
>
>   Another possibility is to replace the LGPL JavaScript files with  
> our own
>   version and then get the Selenium project to adopt the Apache  
> licensed
>   version. There isn't a lot of code to change, but it would take an  
> effort to
>   test it thoroughly to make sure all the Selenium code still worked  
> with the
>   change.

Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

Brett
Update on SeleniumXml:

There was an effort to replace some of the LGPL code in Selenium a few
months back. I am following up with the developers to see how this is coming
along.

Over the holiday break I will open up a Jira issue with a patch to include
all the SeleniumXml source and the build to download the selenium-core
library.  I'll also see if we could host the JavaScript files separately
from the core and make them available over the net.  This would avoid the
whole library download issue.

This will give everyone a chance to play with the solution and make any
proposals for the best way to move forward on the testing framework.  I'll
continue to drive the effort, but I'm always appreciative of feedback from
the community on how to proceed.

Thanks,


Brett

On Fri, Dec 12, 2008 at 8:55 PM, David E Jones
<[hidden email]>wrote:

>
> On Dec 11, 2008, at 3:27 PM, Brett Palmer wrote:
>
>  *Proposed Solutions*
>>
>>  1.
>>
>>  Create a custom ant target (e.g. install-selenium-xml) that downloads the
>>  selenium-server.jar from a non-Apache hosted website (e.g. SourceForge).
>> For
>>  example, the Apache Velocity project does this with their build which may
>> be
>>  to work around possible license problems as we have here.
>>
>
> I think I like #2 better, but for this option one alternative we could
> consider with these is that if the files are only used by the client
> (browser) we could host them somewhere where they are accessed as needed.
> This means that to run the tests the machine would have to be connected to
> the internet, but it would eliminate the need for any extra steps during
> build/run.
>
> -David
>
>
>
>   2.
>>
>>  Another possibility is to replace the LGPL JavaScript files with our own
>>  version and then get the Selenium project to adopt the Apache licensed
>>  version. There isn't a lot of code to change, but it would take an effort
>> to
>>  test it thoroughly to make sure all the Selenium code still worked with
>> the
>>  change.
>>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

Jacques Le Roux
Administrator
And then maybe the issue https://issues.apache.org/jira/browse/OFBIZ-680 would still be interesting

Jacques

From: "Brett Palmer" <[hidden email]>

> Update on SeleniumXml:
>
> There was an effort to replace some of the LGPL code in Selenium a few
> months back. I am following up with the developers to see how this is coming
> along.
>
> Over the holiday break I will open up a Jira issue with a patch to include
> all the SeleniumXml source and the build to download the selenium-core
> library.  I'll also see if we could host the JavaScript files separately
> from the core and make them available over the net.  This would avoid the
> whole library download issue.
>
> This will give everyone a chance to play with the solution and make any
> proposals for the best way to move forward on the testing framework.  I'll
> continue to drive the effort, but I'm always appreciative of feedback from
> the community on how to proceed.
>
> Thanks,
>
>
> Brett
>
> On Fri, Dec 12, 2008 at 8:55 PM, David E Jones
> <[hidden email]>wrote:
>
>>
>> On Dec 11, 2008, at 3:27 PM, Brett Palmer wrote:
>>
>>  *Proposed Solutions*
>>>
>>>  1.
>>>
>>>  Create a custom ant target (e.g. install-selenium-xml) that downloads the
>>>  selenium-server.jar from a non-Apache hosted website (e.g. SourceForge).
>>> For
>>>  example, the Apache Velocity project does this with their build which may
>>> be
>>>  to work around possible license problems as we have here.
>>>
>>
>> I think I like #2 better, but for this option one alternative we could
>> consider with these is that if the files are only used by the client
>> (browser) we could host them somewhere where they are accessed as needed.
>> This means that to run the tests the machine would have to be connected to
>> the internet, but it would eliminate the need for any extra steps during
>> build/run.
>>
>> -David
>>
>>
>>
>>   2.
>>>
>>>  Another possibility is to replace the LGPL JavaScript files with our own
>>>  version and then get the Selenium project to adopt the Apache licensed
>>>  version. There isn't a lot of code to change, but it would take an effort
>>> to
>>>  test it thoroughly to make sure all the Selenium code still worked with
>>> the
>>>  change.
>>>
>>
>>
>
Reply | Threaded
Open this post in threaded view
|

Re: Follow up on SeleniumXml Test framework for OFBiz

David E Jones-3
In reply to this post by Brett

That sounds great Brett. Thank you for your help in this area.

-David


On Dec 23, 2008, at 10:54 AM, Brett Palmer wrote:

> Update on SeleniumXml:
>
> There was an effort to replace some of the LGPL code in Selenium a few
> months back. I am following up with the developers to see how this  
> is coming
> along.
>
> Over the holiday break I will open up a Jira issue with a patch to  
> include
> all the SeleniumXml source and the build to download the selenium-core
> library.  I'll also see if we could host the JavaScript files  
> separately
> from the core and make them available over the net.  This would  
> avoid the
> whole library download issue.
>
> This will give everyone a chance to play with the solution and make  
> any
> proposals for the best way to move forward on the testing  
> framework.  I'll
> continue to drive the effort, but I'm always appreciative of  
> feedback from
> the community on how to proceed.
>
> Thanks,
>
>
> Brett
>
> On Fri, Dec 12, 2008 at 8:55 PM, David E Jones
> <[hidden email]>wrote:
>
>>
>> On Dec 11, 2008, at 3:27 PM, Brett Palmer wrote:
>>
>> *Proposed Solutions*
>>>
>>> 1.
>>>
>>> Create a custom ant target (e.g. install-selenium-xml) that  
>>> downloads the
>>> selenium-server.jar from a non-Apache hosted website (e.g.  
>>> SourceForge).
>>> For
>>> example, the Apache Velocity project does this with their build  
>>> which may
>>> be
>>> to work around possible license problems as we have here.
>>>
>>
>> I think I like #2 better, but for this option one alternative we  
>> could
>> consider with these is that if the files are only used by the client
>> (browser) we could host them somewhere where they are accessed as  
>> needed.
>> This means that to run the tests the machine would have to be  
>> connected to
>> the internet, but it would eliminate the need for any extra steps  
>> during
>> build/run.
>>
>> -David
>>
>>
>>
>>  2.
>>>
>>> Another possibility is to replace the LGPL JavaScript files with  
>>> our own
>>> version and then get the Selenium project to adopt the Apache  
>>> licensed
>>> version. There isn't a lot of code to change, but it would take an  
>>> effort
>>> to
>>> test it thoroughly to make sure all the Selenium code still worked  
>>> with
>>> the
>>> change.
>>>
>>
>>