I have to automate the testing for a web application. No manual test cases are available. The application mainly shows graphs of consumption(Kendo Charts). What can I check to determine whether the test has failed or passed.
It is totally depends on your requirement and based on that you can decide that if test is pass or fail.
Generally you can verify following :
1 - Correctness of data which graph represents.
2 - Graph layout in different browsers.
3 - Ensure that if data changed then is it reflecting in graph or not.
4 - If there are multiple types of chart then verify all one by one.
5 - Finally as I told depth testing can be done based on requirements.
I suggest that do not use automation for this type of testing. Better to use manual testing.
I don't know does Kendo Charts have html structure, but if they do, You can check on the first place visibility of components on every chart (if they aren't visible, than test fail), if there is possibility to get values of charts You can prepare charts with custom values, get the charts attributes and compare it to given data (if values are different that given ones than test fail). Another think is You should do this on different browsers, and so: Firefox it's let's say out of the box with selenium, but You can check it on Chrome, and if You want to play a little bit more ambitious, You can setup selenium Grid and try to run for example Internet Explorer on virtual machine of windows.
I'm interested in ideas other people, because this can be nice case :)
Unless there is specific interactions with the charts, don't test the charts.
Automatic testing of charts is very hard to maintain, certainly when you update the library. In this case expect the supplier of the charting library to test the chart rendering.
Maybe test that one chart is shown correctly to test that the library is implemented correctly.
Its more valuable to test the data that is feeded to the charts. The data is what counts. For a webapplication I would expect the data is fed with a web-service call, see if you can test the calls and their output instead.