Moving from J2EE industry to Android development there is a question in my mind, about continuous integration to perform smoke or integration testing.
I'm building a single game, a memory card game, with junit for small logic testing of classes but cannot figure how to implement the testing for the use of canvas.
If the application is developed just with UI elements from android, it is easy to use the UI Testing environment on the SDK: UI android automatic testing
but what for canvas?
I would try to explain the current infrastructure:
github or bitbucket as CSV
Jenkins server
Which captures with SCM a commit on github or bitbucket, download the changes, compiles and executes all the junit on the application for fail-fast.
- TestRail
Where the testcases for QA are described
While working on J2EE industry I had, a part from previous ones:
- JBehave (http://jbehave.org/)
Which reads from testrail all the testcases linked to a Test plan and executes it (the test-cases should use a pattern)
ex:
Preconditions:
1. Be on login screen
Steps:
1. Fill login with *{username}*
2. Fill password with *{password}*
3. Click on button *Login*
Expected:
1.
2.
3. Message with info *Login error*
- Jemmy
As the link you can find above, it is used to test java swing components, looks for a common element and interacts with it.
So, from jenkins:
1. we check for changes on code
2. compile the code
3. execute junit
4. execute BDD (deploy code on a server, and execute the integration-testing with jbehave)
graphically it is shown as a pipeline:

My question is:
- Is it possible to implement the part I miss, the automatic testing, on canvas application?
As the application can be run on multiple devices, each one with different screen sizes, menu positions, I don't like to use x,y coordinates on tests definitions.
Was anyone in my same concern and found a correct "best practices" solution?
Currently, our QA team, is moving from excel, yeah you read it right, from excel to test rail, so moving from manual testing for test-cases to automatic fail-fast continuous integration would help QA as Development team.
Thank you!!!