Yes, the existing frameworks are pretty useful..
In the recent past, I have placed all my tests on a "test" page that was embedded in to the application but not reachable unless physically typed.
For instance, I would have all the tests in a page accessible under chrome-extension://asdasdasdasdad/unittests.html
The tests would have access to localStorage
etc. For accessing content scripts, in theory you could test that through embedded IFRAMEs in your test page, however these are more integration level testing, unit tests would require you to abstract that away from real pages so that you don't depend on them, likewise with access to localStorage.
If you want to test pages directly, you can orchestrate your extension to open new tabs (chrome.tab.create({"url" : "someurl"}). For each of the new tabs your content script should run and you can use your testing framework to check that your code has done what it should do.
As for frameworks, JsUnit or the more recent Jasmine should work fine.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…