Naoki,
It looks like you created a branch in the main gaia repo for your patch. That's a bad idea. Hundreds of gaia developers will download your patch the next time the do a 'git pull upstream'.
Instead, you need to make a personal fork of the repo. Then you can create whatever branches you need in that private fork, and create pull requests of of that fork.

Comment on attachment 802377[details]
12075.html
This test times out for my on my desktop machine, but passes on my laptop. It seems to pass on Travis so Dale is going to test it and check that it passes for him too. It may just be a problem with my desktop because I'm seeing other tests fail too.
Otherwise the code looks great. If it passes for Dale then please rebase this to squash it into one commit before landing.

Comment on attachment 813679[details]
12041.html
Again very sorry for the delay
I would have fixed this up, but it doesnt work for a few reasons
It is not based off gaia master, to fix this I would just make a new branch based off master and apply your changes manually
The commit mesage needs to be meaningful, "Bug 914179 - Add integration test for opening tab screen" for example.
But the biggest problem is that it doesnt test anything, |(client.helper.waitForElement('#tabs-list')| is always in the dom and will pass irregardless of whats happened, you can tell that by either commenting out subject.tabsBadge.click() or the event listener added in browser.js, it passes both times, it needs to test for visibility