| Wei Li Agreed. As I mentioned in my previous comment I'm considering Selinium UI suite out of scope for this as I recall some conversations about the level of effort required to maintain older testing suites which relied on this. David Ffrench Based on our conversation and discussion earlier, after some short investigation, it looks like the way MDC is testing the logic of functions contained in components is to test the outcome. For example there is a test for MobileClientCardView which checks how many MobileClientCardItem's are rendered depending on the state which is passed to the component. You can see the test here: https://github.com/aerogear/mobile-developer-console/blob/master/ui/src/components/overview/MobileClientCardView.test.js#L13-L32 Checks that when an object with two apps is passed in that the the component renders two MobileClientCardItems based on the logic executed within the parent component which can be seen here: https://github.com/aerogear/mobile-developer-console/blob/master/ui/src/components/overview/MobileClientCardView.js#L82-L100 In terms of unit testing I think a good approach would be to test each component doing _at least_ the following: Smoke test all components - e.g. the render correctly. Test any logic contained within the component which affects rendering of children components -> the container/presentation layer components can help us here as it's fairly obvious what state gets passed to each of the components - at least if you've written the component. For now we are not executing massive amount of logic within the code so I will implement smoke tests for each of the components and any logic tests where I can. Do you consider the discussion/resulting recommendations to be sufficient for this investigation task? As discussed earlier I am adding the tests to the pr for setting up the AppTable view so they would be covered under that JIRA (linked as related). After that I think it's a matter of upskilling ourselves enough to be able to write each of the specific test cases. wdyt? |