View Code? Open in Web Editor
NEW
Application to collaboratively collect good and bad examples of web accessibility (a11y) implementations.
Home Page: www.kbaccess.org
License: GNU Affero General Public License v3.0
Java 80.47%
Shell 0.08%
CSS 19.45%
kbaccess's Issues
Edit and delete testcase as :
the owner of the testcase
moderator
admin
Check if you have rights to do so in every above situation
Edit a testcase, change :
the test to a test that is from another criterion
the result
the description
Check if the new informations have been modified (especially if the criterion has been effectively changed)
Edit a testcase, don't change anything :
Check if the informations haven't been modified
titles and links :
title tag : Exemple accessibilité 1.1.3 (AccessiWeb 2.1) validé sur 'url'
URL : testcase/details/id-exemple-accessibilite-1.1.3-accessiweb2.1-valide.html
h1 : Testcase n°1050 : 1.1.3 ([abbr]AW2.1[abbr] validé sur 'url'
list :
detais image link instead of a css link
replace title column by description
The api documentation is really poor, we have to improve it and deprecate unused methods.
A user could create a testcase in a few clics.
Login/passwd should be stored.
tests should be searchable by an ajax full-text search. For Instance, I type "fra" I should see all theme 2 tests (related to FRAmes)
Be able to manage users, testcases and webarchives.
Log in and go to "my account" :
change your firstname, lastname and website url
check if every informations have been effectively changed
change your password
check if you can log in with the new password
Links to add in the "see also" box :
list of testcases on the same accessibility reference
list of testcases on the same criterion
list of testcases on the same test
list of testcases from the same user
Click the accessibility reference, criterion and test link :
check if each of them leads to their description on their original website
Log in and visit the details of one of your testcase :
the "testcases from this user" link should not appear
Visit the page without being authentified :
the "testcase from this user" link should return the same result as the "my testcases" of the user who created the testcase
the "same accessibility reference/critetion/test" links should return the same result as the search testcases page (with the same parameters)
Add other statitics about web archives:
list the ones invalidating the most numerous tests
do the same for the criterias
Examples:
Web Archives with greater number of tests failed
WebArchive03: 14 tests failed
WebArchive07: 10 tests failed
WebArchive18: 5 tests failed
Web Archives with greater number of tests passed
WebArchive04: 15 tests failed
WebArchive08: 11 tests failed
WebArchive19: 6 tests failed
(same with criterias)
Turn :
testcase/details/:id-title.html
testcase/edit-details.html?id=:id
testcase/delete.html?id=:id
account/details.html?id=:id
admin/edituser.html?id=:id
Respectively into :
testcase/details/:id/title.html
testcase/edit/:id/title.html
testcase/delete/:id/title.html
account/details/:id/
admin/edituser/:id/
(KBAccess v1)
Unable to create either a testcase with wabarchive, or a single webarchive.
Logs show Heritrix running but taking a very looooong time, resultating in a 503 error.
Even after 30 minutes, the web archive is not created.
(This web page is interesting because it invalidates AccessiWeb criterias 8.3 and 8.10)
Trace when the user logs in.
Be able to host the language of a given testcase into the data model.
Expected behaviour for the webapp:
a testcase language is the same than the user language,
except if the testcase language is overridden by the user
step 1 : webarchive (in a separate thread to avoid waiting)
step 2 : input the details of the testcase (the webarchive is still being processed)
step 3 : summary
(KBAccess v1)
Log files say "The url is unreachable" whereas it is actually reachable !
(that's sad because this URL contains an interesting invalidation of AccessiWeb 11.8.3)
log extract:
Sep 17 10:23:03 diegogarcia jsvc.exec[4615]: 17 sept. 2012 10:23:03 org.opens.kbaccess.controller.WebarchiveController createWebarchive ATTENTION: null org.opens.slurpmanager.exception.WebarchiveCreationException: The url is unreachable : http://www.lobodis.com/boutique.php ^Iat org.opens.slurpmanager.handler.WebarchiveHandlerImpl.create(WebarchiveHandlerImpl.java:122) ^Iat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ^Iat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ^Iat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ^Iat java.lang.reflect.Method.invoke(Method.java:597) ^Iat org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) ^Iat org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182) ^Iat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) ^Iat org.springframework.transaction.inter
Sep 17 10:23:03 diegogarcia jsvc.exec[4615]: tionInterceptor.java:106) ^Iat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) ^Iat org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) ^Iat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) ^Iat org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) ^Iat $Proxy118.create(Unknown Source) ^Iat org.opens.slurpmanager.SlurpManagerImpl.create(SlurpManagerImpl.java:29) ^Iat org.opens.kbaccess.controller.WebarchiveController.createWebarchive(WebarchiveController.java:202) ^Iat org.apache.jsp.ajoutWebarchive_jsp._jspService(ajoutWebarchive_jsp.java:71) ^Iat org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) ^Iat javax.servlet.http.HttpServlet.service(HttpServlet.java:802) ^Iat org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331) ^Iat org.
Sep 17 10:23:03 diegogarcia jsvc.exec[4615]: (JspServlet.java:329) ^Iat org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) ^Iat javax.servlet.http.HttpServlet.service(HttpServlet.java:802) ^Iat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) ^Iat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) ^Iat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) ^Iat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) ^Iat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) ^Iat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) ^Iat org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:544) ^Iat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) ^Iat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) ^Iat org.apache.jk.server.JkCoyoteHandle
Sep 17 10:23:03 diegogarcia jsvc.exec[4615]: he.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) ^Iat org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773) ^Iat org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) ^Iat org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895) ^Iat org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) ^Iat java.lang.Thread.run(Thread.java:662)
Will prevent the webarchive creation process to be in an infinite loop state if the provided url is not reachable
chech if HEAD request returns status code 200
Users :
check that you can see the "all users" link on the left menu
check that you have access to that list
check that you can edit every users that are not admin
check that you can't edit an admin
check that you can't edit your own role (an admin can't downgrade himself)
edit the email, password, firstname, lastname and url of a user
check if every informations have been effectively changed
Testcases :
check if you can edit a testcase not created by you
edit a testcase not created by you
checl if every informations have been effectively changed
The URL field validation does not work properly :
the error message "incorrect url" is not in the error area and is not easy to notice
enter "www.kbacess.org" : error message "missing fields" "incorrect url" without saying that it requires "http://"
selecting create a new webarchive wihtout inputting an URL : proposes to select an existing webarchive and without a way to validate (no button)
create a new webarchive with well formed but not reachable URL (i.e http://www.kbaccess.anytingyouwant ) : the browser shows a working status, but nothing happens and the user is not notified that the URL he entered does not exist/isn't reachable
Delete testcase as :
the owner of the testcase
moderator
admin
Check if you have rights to do so in every above situation
Check if the testcases have been effectively deleted
The project does not have any tests, let's fix this.
A lot of tests are not complete and are lacking of error cases. This tests have been marked by a TODO.
Replace the logo KBAccess with plain text
Remove "create a testcase" and "search a testcase" links since they are already part of the menu bar on the left
Log in as :
admin
moderator
contributor & owner of the testcases
Check if the UI displays every permissions over the testcases (edit and delete) in the list of every testcase and on the details page of a testcase
The email must contain the testcase url
share on fb : ttp://stackoverflow.com/questions/13223951/facebook-share-button-how-to-implement
tweet :
Not selecting every required fields : proposes to select only the first required field without a way to validate (no button)
Fix the table testcase (remove column title, ...)
No redundancy in the pages to define the main structure of the page's layout.